home *** CD-ROM | disk | FTP | other *** search
/ Best Tools for JAVA / Best Tools for JAVA.iso / STANDARD / INTRNATL / HTML_IL8.TXT < prev    next >
Encoding:
Text File  |  1995-11-09  |  88.4 KB  |  2,355 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                       F. Yergeau
  8. Internet Draft                                                G. Nicol
  9. <draft-ietf-html-i18n-00.txt>                                 G. Adams
  10. Expires 20 February 1996                                     M. Duerst
  11.                                                         15 August 1995
  12.  
  13.  
  14.          Internationalization of the Hypertext Markup Language
  15.  
  16.  
  17. Status of this Memo
  18.  
  19.    This document is an Internet-Draft.  Internet-Drafts are working doc-
  20.    uments of the Internet Engineering Task Force (IETF), its areas, and
  21.    its working groups. Note that other groups may also distribute work-
  22.    ing documents as Internet-Drafts.
  23.  
  24.    Internet-Drafts are draft documents valid for a maximum of six
  25.    months. Internet-Drafts may be updated, replaced, or obsoleted by
  26.    other documents at any time.  It is not appropriate to use Internet-
  27.    Drafts as reference material or to cite them other than as a "working
  28.    draft" or "work in progress".
  29.  
  30.    To learn the current status of any Internet-Draft, please check the
  31.    1id-abstracts.txt listing contained in the Internet-Drafts Shadow
  32.    Directories on ds.internic.net (US East Coast), nic.nordu.net
  33.    (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
  34.    Rim).
  35.  
  36.    Distribution of this document is unlimited.  Please send comments to
  37.    the HTML working group (HTML-WG) of the Internet Engineering Task
  38.    Force (IETF) at <html-wg@oclc.org>. Discussions of the group are
  39.    archived at URL: http://www.acl.lanl.gov/HTML_WG/archives.html.
  40.  
  41.  
  42. Abstract
  43.  
  44.    The Hypertext Markup Language (HTML) is a simple markup language used
  45.    to create hypertext documents that are platform independent.  Up to
  46.    the present time, the application of HTML on the World Wide Web was
  47.    seriously restricted by its reliance on the ISO-8859-1 coded charac-
  48.    ter set, which is appropriate only for Western European languages.
  49.    Despite this restriction, HTML has been widely used with other lan-
  50.    guages, using other coded character sets or character encodings,
  51.    through various ad hoc extensions to the language.
  52.  
  53.    This document is meant to address the issue of the internationaliza-
  54.    tion of HTML by extending the specification of HTML 2.0 and giving
  55.  
  56.  
  57.  
  58.                         Expires 20 February 1996        [Page 1]
  59.  
  60. Internet Draft          HTML internationalization         15 August 1995
  61.  
  62.  
  63.    additional recommendations for proper internationalisation support.
  64.    A foremost consideration is to make sure that HTML remains a valid
  65.    application of SGML, while enabling its use in all languages of the
  66.    world.
  67.  
  68.    The "text/html; version=2.x" Internet Media Type [RFC1590] and MIME
  69.    Content Type [RFC1521] is defined by this specification, taken
  70.    together with the HTML 2.0 specification [HTML-2].
  71.  
  72.  
  73. Table of contents
  74.  
  75.    1.  Introduction .................................................. 2
  76.      1.1. Scope ...................................................... 3
  77.      1.2. Conformance ................................................ 3
  78.    2. The document character set ..................................... 5
  79.      2.1. Reference processing model ................................. 5
  80.      2.2. The HTML 2.x document character set ........................ 7
  81.      2.3. Undisplayable characters ................................... 8
  82.    3. Language tags .................................................. 8
  83.    4. Additional entities and elements ...............................10
  84.      4.1. Full Latin-1 entity set ....................................10
  85.      4.2. Date, time, measures and monetary amounts ..................10
  86.      4.3. Entities and elements for language-dependent presentation ..12
  87.    5. Forms ..........................................................15
  88.      5.1. DTD additions ..............................................15
  89.      5.2. Form submission ............................................17
  90.    6. Miscellaneous ..................................................17
  91.    7. HTML public text ...............................................18
  92.      7.1. HTML DTD ...................................................18
  93.      7.2. SGML declaration for HTML ..................................34
  94.      7.3. Entity sets ................................................36
  95.        7.3.1. ISO Latin 1 character entity set .......................36
  96.        7.3.2. BIDI entity set ........................................39
  97.    Bibliography ......................................................39
  98.    Authors' Addresses ................................................41
  99.  
  100.  
  101. 1.  Introduction
  102.  
  103.    The Hypertext Markup Language (HTML) is a simple markup language used
  104.    to create hypertext documents that are platform independent.  Up to
  105.    the present time, the application of HTML on the World Wide Web was
  106.    seriously restricted by its reliance on the ISO-8859-1 coded charac-
  107.    ter set, which is appropriate only for Western European languages.
  108.    Despite this restriction, HTML has been widely used with other lan-
  109.    guages, using other coded character sets or character encodings,
  110.    through various ad hoc extensions to the language [TAKADA].
  111.  
  112.  
  113.  
  114.                         Expires 20 February 1996        [Page 2]
  115.  
  116. Internet Draft          HTML internationalization         15 August 1995
  117.  
  118.  
  119.    This document is meant to address the issue of the internationaliza-
  120.    tion of HTML by extending the specification of HTML 2.0 and giving
  121.    additional recommendations for proper internationalisation support.
  122.    It is in good part based on a paper by one of the authors on multi-
  123.    lingualism on the WWW [NICOL].  A foremost consideration is to make
  124.    sure that HTML remains a valid application of SGML, while enabling
  125.    its use in all languages of the world.
  126.  
  127.    The specific issues addressed are the SGML document character set to
  128.    be used for HTML, the proper treatment of the charset parameter asso-
  129.    ciated with the "text/html" content type and the specification of
  130.    language tags and additional entities.
  131.  
  132.  
  133. 1.1 Scope
  134.  
  135.    HTML has been in use by the World-Wide Web (WWW) global information
  136.    initiative since 1990.  This specification extends the capabilities
  137.    of HTML 2.0 (RFC xxx), primarily by removing the restriction to the
  138.    ISO-8859-1 coded character set [ISO-8859-1].  Together with the HTML
  139.    2.0 specification, it defines a new version of HTML to be known as
  140.    "HTML 2.x".
  141.  
  142.    HTML is an application of ISO Standard 8879:1986, Information Pro-
  143.    cessing Text and Office Systems -- Standard Generalized Markup Lan-
  144.    guage (SGML) [ISO-8879]. The HTML Document Type Definition (DTD) is a
  145.    formal definition of the HTML syntax in terms of SGML.  This specifi-
  146.    cation amends the DTD of HTML 2.0 in order to make it applicable to
  147.    documents encompassing a character repertoire much larger than that
  148.    of ISO-8859-1, while still remaining SGML conformant.
  149.  
  150.    Together with the HTML 2.0, specification, this specification also
  151.    defines HTML as an Internet Media Type [RFC1590] and MIME Content
  152.    Type [RFC1521] called "text/html", or "text/html; version=2.x". As
  153.    such, it defines the semantics of the HTML syntax and how that syntax
  154.    should be interpreted by user agents.
  155.  
  156.  
  157. 1.2 Conformance
  158.  
  159.    This specification governs the syntax of HTML documents and aspects
  160.    of the behavior of HTML user agents.
  161.  
  162. 1.2.1 Documents
  163.  
  164.    A document is a conforming HTML document if:
  165.  
  166.    *  It is a conforming SGML document, and it conforms to the HTML DTD
  167.  
  168.  
  169.  
  170.                         Expires 20 February 1996        [Page 3]
  171.  
  172. Internet Draft          HTML internationalization         15 August 1995
  173.  
  174.  
  175.       (see 7.1, "HTML DTD").
  176.  
  177.    *  It conforms to the application conventions in this specification.
  178.       For example, the value of the HREF attribute of the <A> element
  179.       must conform to the URI syntax.
  180.  
  181. 1.2.2. User agents
  182.  
  183.    An HTML user agent conforms to this specification if:
  184.  
  185.    *  It parses the characters of an HTML document into data characters
  186.       and markup according to SGML [ISO-8879].
  187.  
  188.         NOTE -- In the interest of robustness and extensibility,
  189.         there are a number of widely deployed conventions for han-
  190.         dling non-conforming documents.  See section 4.2.1 of the
  191.         HTML 2.0 specification [HTML-2], "Undeclared Markup Error
  192.         Handling" for details.
  193.  
  194.    *  It supports at least the ISO-8859-1 character encoding scheme and
  195.       processes each character in the ISO Latin Alphabet No. 1 as speci-
  196.       fied in section 6.1 of [HTML-2].
  197.  
  198.       To ensure interoperability and proper support for at least
  199.       ISO-8859-1 in an environment where character encoding schemes
  200.       other than ISO-8859-1 are present, user agents must correctly
  201.       interpret the charset parameter accompanying an HTML document
  202.       received from the network.
  203.  
  204.       Furthermore, conforming user-agents are required to at least parse
  205.       correctly numeric character references outside the range of
  206.       ISO-8859-1, but within that of UCS-2.
  207.  
  208.         NOTE -- To support non-western writing systems, HTML user
  209.         agents are encouraged to support `ISO-10646-UCS-2' or simi-
  210.         lar character encoding schemes and as much of the character
  211.         repertoire of [ISO-10646] as is practical.
  212.  
  213.    *  It behaves identically for documents whose parsed token sequences
  214.       are identical.
  215.  
  216.       For example, comments and the whitespace in tags disappear during
  217.       tokenization, and hence they do not influence the behavior of con-
  218.       forming user agents.
  219.  
  220.    *  It allows the user to traverse (or at least attempt to traverse,
  221.       resources permitting) all hyperlinks from <A> elements in an HTML
  222.       document.
  223.  
  224.  
  225.  
  226.                         Expires 20 February 1996        [Page 4]
  227.  
  228. Internet Draft          HTML internationalization         15 August 1995
  229.  
  230.  
  231.    An HTML user agent is a level 2 user agent if, additionally:
  232.  
  233.    *  It allows the user to express all form field values specified in
  234.       an HTML document and to (attempt to) submit the values as requests
  235.       to information services.
  236.  
  237. 2. The document character set
  238.  
  239. 2.1. Reference processing model
  240.  
  241.    This overview explains the reference processing model used for HTML
  242.    2.x, and in particular the SGML concept of a document character set.
  243.    An actual implementation may widely differ in its internal workings
  244.    from the model given below, but should behave as described to an out-
  245.    side observer.
  246.  
  247.    Because there are various widely differing encodings of text, SGML
  248.    does not directly address the question of how characters are encoded
  249.    e.g. in a file. SGML views the characters as a single set (called a
  250.    "character repertoire"), and a "code set" that assigns an integer
  251.    number (known as "character number") to each character in the reper-
  252.    toire.  The document character set declaration defines what each of
  253.    the character numbers represents [GOLD90, p. 451].  In most cases, an
  254.    SGML DTD and all documents that refer to it have a single document
  255.    character set, and all markup and data characters are part of this
  256.    set.
  257.  
  258.    HTML, as an application of SGML, does not directly address the ques-
  259.    tion of how characters are encoded as octets in external representa-
  260.    tions such as files. This is deferred to mechanisms external to HTML,
  261.    such as the HTTP protocol, or MIME for electronic mail.
  262.  
  263.    For the HTTP protocol [HTTP], the way characters are encoded is
  264.    defined by the "charset" parameter[1] added to the "Content-Type"
  265.    field of the header of an HTTP response. For example, to indicate
  266.    that the transmitted document is encoded in the "JIS" encoding of
  267.    Japanese [RFC1468], the header will contain the following line:
  268.  
  269.    Content-Type: text/html; charset=ISO-2022-JP
  270.  
  271. _________________________
  272.   [1] The use of the keyword "charset" in MIME suggests
  273. that the corresponding parameter  defines  a  character
  274. set  in  the  terms  used  here.  This is not true, the
  275. "charset" parameter  actually  specifies  an  encoding,
  276. i.e.  the  mapping of one (or several) character set(s)
  277. to octets.
  278.  
  279.  
  280.  
  281.  
  282.                         Expires 20 February 1996        [Page 5]
  283.  
  284. Internet Draft          HTML internationalization         15 August 1995
  285.  
  286.  
  287.    The default character set parameter in case of the HTTP protocol is
  288.    ISO-8859-1 (the so-called "Latin-1" for Western European characters).
  289.    The HTTP protocol also defines a mechanism for the client to define
  290.    the character encodings it can accept. Clients and servers are
  291.    strongly requested to use these mechanisms to assure correct trans-
  292.    mission and interpretation of any document. Provisions that can be
  293.    taken to help correct interpretation, even in cases where a server or
  294.    client do not yet use these mechanisms, are described in section 6.
  295.  
  296.    Similarly, if HTML documents are transferred by electronic mail, the
  297.    character encoding is defined by the "charset" parameter of the "Con-
  298.    tent-Type" MIME header line [RFC1521].
  299.  
  300.    In the case any other way of transferring and storing HTML documents
  301.    are defined or become popular, it is advised that similar provisions
  302.    should be made to clearly identify the character encoding used and/or
  303.    to use a single/default encoding capable of representing the widest
  304.    range of characters used in an international context.
  305.  
  306.    Whatever the external character encoding actually be, it is always
  307.    translated to a representation of the document character set speci-
  308.    fied in Section 2.2 before processing specific to SGML/HTML.  The
  309.    reference processing model can be depicted as follows:
  310.  
  311.      [resource]->[decoder]->[entity ]->[ SGML ]->[application]->[display]
  312.                             [manager]  [parser]
  313.                                 ^          |
  314.                                 |          |
  315.                                 +----------+
  316.  
  317.    The decoder is responsible for decoding the external representation
  318.    of the resource to a representation using the document character set.
  319.    The entity manager, the parser, and the application deal only with
  320.    characters of the document character set.  A display-oriented part of
  321.    the application or the display machinery itself may again convert
  322.    characters represented in the document character set to some other
  323.    representation more suitable for their purpose. In any case, the
  324.    entity manager, the parser, and the application, as far as character
  325.    semantics are concerned, are using the HTML 2.x document character
  326.    set only.
  327.  
  328.    An actual implementation may choose to translate the document into
  329.    some encoding of the document character set as described above. How-
  330.    ever, the behaviour described by this reference processing model can
  331.    be achieved otherwise, in particular by using scan-suppression tech-
  332.    niques.  This subject is well out of the scope of this specification,
  333.    however, and the reader is invited to consult the SGML standard
  334.    [ISO-8879] or a SGML handbook [BRYAN88] [GOLD90] [VANH90] [SQ91] for
  335.  
  336.  
  337.  
  338.                         Expires 20 February 1996        [Page 6]
  339.  
  340. Internet Draft          HTML internationalization         15 August 1995
  341.  
  342.  
  343.    further information.
  344.  
  345.    The most important consequence of this reference processing model is
  346.    that numeric character references are always resolved to the same
  347.    characters, whatever the external encoding actually used. For an
  348.    example, see Section 2.2.
  349.  
  350. 2.2. The HTML 2.x document character set
  351.  
  352.    The document character set, in the SGML sense, of HTML 2.x is the
  353.    Basic Multilingual Plane of ISO 10646:1993 [ISO-10646], also known as
  354.    UCS-2.  This is code-by-code identical with the Unicode standard
  355.    [UNICODE].  The adoption of this document character set implies a
  356.    change in the SGML declaration specified in the HTML 2.0 specifica-
  357.    tion (section 9.5 of [HTML-2]).  The change amounts to removing the
  358.    two BASESET specifications and their accompanying DESCSET declara-
  359.    tions, replacing them with the following declaration:
  360.  
  361.      BASESET "ISO Registration Number 176//CHARSET
  362.               ISO/IEC 10646-1:1993 UCS-2 with implementation level 3
  363.               //ESC 2/5 2/15 4/5"
  364.      DESCSET  0   9     UNUSED
  365.               9   2     9
  366.               11  2     UNUSED
  367.               13  1     13
  368.               14  18    UNUSED
  369.               32  95    32
  370.               127 1     UNUSED
  371.               128 32    UNUSED
  372.               160 65376 160
  373.  
  374.    Making UCS-2 the document character set does not create non-
  375.    conformance of any expression, construct or document that is conform-
  376.    ing to HTML 2.0.  It does make conforming certain constructs that are
  377.    not admissible in HTML 2.0.  One consequence is that data characters
  378.    outside the repertoire of ISO-8859-1, but within that of UCS-2 become
  379.    valid SGML characters.  Another is that the upper limit of the range
  380.    of numeric character references is extended from 255 to 65533[2] ;
  381.    thus, И is a valid reference to a "CYRILLIC CAPITAL LETTER I".
  382.    [ERCS] is a good source of information on Unicode and SGML, although
  383.    its scope and technical content differ greatly from this
  384. _________________________
  385.   [2] 65533  (FFFD hexadecimal) is the last valid char-
  386. acter in UCS-2. 65534 (FFFE hexadecimal) is  unassigned
  387. and  reserved as the byte-swapped version of ZERO WIDTH
  388. NON-BREAKING SPACE  for  byte-sex  detection  purposes.
  389. 65535 (FFFF hexadecimal) is unassigned.
  390.  
  391.  
  392.  
  393.  
  394.                         Expires 20 February 1996        [Page 7]
  395.  
  396. Internet Draft          HTML internationalization         15 August 1995
  397.  
  398.  
  399.    specification.
  400.  
  401.    ISO 10646-1:1993 is the most encompassing character set currently
  402.    existing, and there is no other character set that could take its
  403.    place as the document character set for HTML 2.x. Also, it is
  404.    expected that with future extensions of ISO 10646, this specification
  405.    may also be extended.  If nevertheless for a specific application
  406.    there is a need to use characters outside this standard, this should
  407.    be done by avoiding any conflicts with present or future versions of
  408.    ISO 10646, i.e. by assigning these characters to a private zone.
  409.    Also, it should be borne in mind that such a use will be highly
  410.    unportable; in many cases, it may be better to use inline bitmaps.
  411.  
  412. 2.3. Undisplayable characters
  413.  
  414.    With the document character set being the full ISO 10646 BMP, the
  415.    possibility that a character cannot be displayed due to lack of
  416.    appropriate resources (fonts) cannot be avoided. Because there are
  417.    many different things that can be done in such a case, this document
  418.    does not recommend any specific behaviour. Depending on the implemen-
  419.    tation, this may also be handled by the underlaying display system
  420.    and not the application itself.  The following considerations, how-
  421.    ever, may be of help:
  422.  
  423.    -  A clearly visible, but unobtrusive behaviour should be preferred.
  424.       Some documents may contain many characters that cannot be renden-
  425.       dered, and so showing an alert for each of them is not the right
  426.       thing to do.
  427.  
  428.    -  In case a numeric representation of the missing character is
  429.       given, its hexadecimal (not decimal) form is to be preferred,
  430.       because this form is used in character set standards [ERCS].
  431.  
  432. 3. Language tags
  433.  
  434.    Language tags can be used to control rendering of a marked up docu-
  435.    ment in various ways: character disambiguation, in cases where the
  436.    character encoding is not sufficient to resolve to a specific glyph;
  437.    quotation marks; hyphenation; ligatures; spacing; voice synthesis;
  438.    etc.  Independently of rendering issues, language markup is useful as
  439.    content markup for purposes such as classification and searching.
  440.  
  441.    The language attribute, LANG, takes as its value a language tag that
  442.    identifies a natural language spoken, written, or otherwise conveyed
  443.    by human beings for communication of information to other human
  444.    beings. Computer languages are explicitly excluded.
  445.  
  446.    The syntax and registry of HTML language tags is the same as that
  447.  
  448.  
  449.  
  450.                         Expires 20 February 1996        [Page 8]
  451.  
  452. Internet Draft          HTML internationalization         15 August 1995
  453.  
  454.  
  455.    defined by RFC 1766 [RFC1766]. In summary, a language tag is composed
  456.    of one or more parts: A primary language tag and a possibly empty
  457.    series of subtags:
  458.  
  459.         language-tag  = primary-tag *( "-" subtag )
  460.         primary-tag   = 1*8ALPHA
  461.         subtag        = 1*8ALPHA
  462.  
  463.    Whitespace is not allowed within the tag and all tags are case-
  464.    insensitive. The namespace of language tags is administered by the
  465.    IANA. Example tags include:
  466.  
  467.        en, en-US, en-cockney, i-cherokee, x-pig-latin
  468.  
  469.    Two-letter primary-tags are reserved for ISO 639 language abbrevia-
  470.    tions [ISO-639], and three-letter primary-tags for the language
  471.    abbreviations of ISO CD 639-2 [ISO-CD-639-2] (the latter is in addi-
  472.    tion to the requirements of RFC 1766). Any two-letter initial subtag
  473.    is an ISO 3166 country code [ISO-3166].
  474.  
  475.    In the context of HTML, a language tag is not to be interpreted as a
  476.    single token, as per RFC 1766, but as a hierarchy. For example, a
  477.    user agent that adjusts rendering according to language should con-
  478.    sider that it has a match when a language tag in a style sheet entry
  479.    matches the initial portion of the language tag of an element. An
  480.    exact match should be preferred. This interpretation allows an ele-
  481.    ment marked up as, for instance, "en-US" to trigger styles corre-
  482.    sponding to, in order of preference, US-English ("en-US") or 'plain'
  483.    or 'international' English ("en").
  484.  
  485.         NOTE -- using the language tag as a hierarchy does not
  486.         imply that all languages with a common prefix will be
  487.         understood by those fluent in one or more of those lan-
  488.         guages; it simply allows the user to request this commonal-
  489.         ity when it is true for that user.
  490.  
  491.    Since any text can logically be assigned a language, almost all HTML
  492.    elements admit the LANG attribute.  The DTD reflects this.  It is
  493.    also intended that any new element introduced in later versions of
  494.    HTML will admit the LANG attribute, unless there is a good reason not
  495.    to do so.
  496.  
  497.    For the cases where a word or phrase differs only by language from
  498.    the surrounding text, an element is needed as a container.  This ele-
  499.    ment is called LANG, and admits the LANG attribute.
  500.  
  501.    The rendering of elements is meant to be controlled (in part) by the
  502.    LANG attribute.  Specific user preferences set within the browser
  503.  
  504.  
  505.  
  506.                         Expires 20 February 1996        [Page 9]
  507.  
  508. Internet Draft          HTML internationalization         15 August 1995
  509.  
  510.  
  511.    should override the value of the LANG attribute, which in turn over-
  512.    rides the value specified by the LANG attribute of any enclosing ele-
  513.    ment. If none of these are set, a suitable default, perhaps con-
  514.    trolled by the user's locale, should be used to control rendering.
  515.  
  516. 4. Additional entities and elements
  517.  
  518. 4.1. Full Latin-1 entity set
  519.  
  520.    According to the suggestion of section 14 of [HTML-2], the set of
  521.    Latin-1 entities is extended to cover the whole right part of
  522.    ISO-8859-1.  The names of the entities are taken from the appendices
  523.    of [SGML].  A list is provided in section 7.3.1 of this specifica-
  524.    tion.
  525.  
  526. 4.2. Date, time, measures and monetary amounts
  527.  
  528.    One problem that faces the Web is that of data representation. Given
  529.    the date "12/9/95", many people will think that this represents the
  530.    12th of September, 1995, while many others will think it represents
  531.    December 9th. The same problem arises for many other data forms. It
  532.    is desireable that the Web have a culture-neutral format for data, so
  533.    that browsers can display the data in the most appropriate format for
  534.    the end user. However, taking away all presentation choice from the
  535.    publishers is also a bad idea, hence, some way of supplying override-
  536.    able presentation hints is also desireable. A set of elements are
  537.    proposed below to address the above problem.
  538.  
  539.  
  540.    DATE      This is used to store dates in such a way that formatting
  541.              can be decided upon by the browser. It is desirable that
  542.              the document author be able to provide the default format,
  543.              with the end-user making the final decision. This format-
  544.              ting is decided upon by the combination, of the CALENDAR
  545.              and LANG attributes. The declaration of the DATE element
  546.              is:
  547.  
  548.              <!ELEMENT DATE - O #EMPTY>
  549.              <!ATTLIST DATE
  550.                      %attrs;
  551.                      CALENDAR  CDATA  #IMPLIED   --specify possible values? --
  552.                      VALUE     CDATA  #REQUIRED
  553.                      >
  554.  
  555.              If the CALENDAR attribute is not specified, the Gregorian
  556.              calendar should be assumed, in which case, the format for
  557.              the value of the VALUE attribute should be in yyyy-mm-dd
  558.              format, as per ISO 8601:1988 [ISO-8601].
  559.  
  560.  
  561.  
  562.                         Expires 20 February 1996       [Page 10]
  563.  
  564. Internet Draft          HTML internationalization         15 August 1995
  565.  
  566.  
  567.    TIME      Like the DATE element, the TIME element is used to store
  568.              time such that it is independent of geographical location,
  569.              and formatting. The declaration of the TIME element is:
  570.  
  571.              <!ELEMENT TIME - O #EMPTY>
  572.              <!ATTLIST TIME
  573.                      %attrs;
  574.                      ZONE      CDATA  #IMPLIED
  575.                      VALUE     CDATA  #REQUIRED
  576.                      >
  577.  
  578.              The contents of VALUE should be in hh:mm:ss.ss format. ZONE
  579.              should contain a string representing the offset of the zone
  580.              from GMT of the form "+HHMM" or "-HHMM".  If omitted, Uni-
  581.              versal Time (GMT) should be assumed.  For example, <TIME
  582.              ZONE="-0500" VALUE="11:35:04"> represents eleven hours
  583.              thirty-five minutes and four seconds after midnight in
  584.              Eastern North America, which is 16:35:04 GMT.
  585.  
  586.  
  587.    MEASURE   This element is designed to allow measurements to be marked
  588.              up such that they can be converted between systems, and
  589.              also to allow some formatting flexibility. The declaration
  590.              of the MEASURE element is:
  591.  
  592.              <!ELEMENT MEASURE - O #EMPTY>
  593.              <!ATTLIST MEASURE
  594.                      %attrs;
  595.                      TYPE      (mass|length|area|volume|temp|dur) #REQUIRED
  596.                      UNIT      CDATA                              #IMPLIED
  597.                      VALUE     CDATA                              #REQUIRED
  598.                      >
  599.  
  600.              This is a variation of the TEI MEASURE element [TEI]. The
  601.              TYPE attribute specifies the type of measurement being rep-
  602.              resented. The UNIT attribute indicates the measurement unit
  603.              type, and defaults to the applicable unit type from SI
  604.              [ISO-1000] if not specified. The VALUE attribute specifies
  605.              the amount of the unit. The contents of the VALUE unit
  606.              should be parseable using the float_constant pattern from
  607.              the following lex(1) definition:
  608.  
  609.              digit     [0-9]
  610.              exponent  [eE][+-]?{digit}+
  611.              i         {digit}+
  612.              float_constant[+-]?({i}|({i}.{i}?)|({i}?.{i})){exponent}?
  613.  
  614.  
  615.  
  616.  
  617.  
  618.                         Expires 20 February 1996       [Page 11]
  619.  
  620. Internet Draft          HTML internationalization         15 August 1995
  621.  
  622.  
  623.    MONEY     This element is designed to represent monetary amounts,
  624.              such that conversion between systems and formatting varia-
  625.              tions are possible. The definition of this element is:
  626.  
  627.              <!ELEMENT MONEY - O #EMPTY>
  628.              <!ATTLIST MONEY
  629.                      %attrs;
  630.                      UNIT      CDATA                              #REQUIRED
  631.                      VALUE     CDATA                              #REQUIRED
  632.                      >
  633.  
  634.              The UNIT attribute specifies the currency unit, using the
  635.              abbreviations of ISO 4217 [ISO-4217]. The VALUE attribute
  636.              contains the amount, and should follow the lexical model of
  637.              the VALUE attribute of the MEASURE element.  It is conceiv-
  638.              able that the functionality of this element could be made
  639.              part of MEASURE.
  640.  
  641.    It should be noted that there are many special cases involving the
  642.    representation of data. For example, many people in New Zealand still
  643.    use miles, even though New Zealand has officially adopted the metric
  644.    system. Worse, some people use miles when they mean kilometers. This
  645.    proposal is not aimed at handling all such cases, but rather to pre-
  646.    sent a reasonable balance between usability, and accuracy. When for-
  647.    mat is of the utmost importance, these tags need not be used.
  648.  
  649.  
  650. 4.3. Entities and elements for language-dependent presentation
  651.  
  652.    For the correct presentation of text from certain languages (irre-
  653.    spective of formatting issues), some support in the form of addi-
  654.    tional entities and elements is needed.  In particular, bidirectional
  655.    text (BIDI for short) requires markup in special circumstances where
  656.    ambiguities as to the directionnality of some characters have to be
  657.    resolved.  First, a set of named character entities is added that
  658.    allows full support of the Unicode bidirectional algorithm [UNICODE],
  659.    plus some help with languages requiring contextual analysis for ren-
  660.    dering:
  661.  
  662.    <!ENTITY zwnj SDATA "[zwnj  ]"--=zero width non-joiner-->
  663.    <!ENTITY zwj  SDATA "[zwj   ]"--=zero width joiner-->
  664.    <!ENTITY lrm  SDATA "[lrm   ]"--=left-to-right mark-->
  665.    <!ENTITY rlm  SDATA "[rlm   ]"--=right-to-left mark-->
  666.    <!ENTITY lre  SDATA "[lre   ]"--=left-to-right embedding-->
  667.    <!ENTITY rle  SDATA "[rle   ]"--=right-to-left embedding-->
  668.    <!ENTITY pdf  SDATA "[pdf   ]"--=pop directional formatting-->
  669.    <!ENTITY lro  SDATA "[lro   ]"--=left-to-right override-->
  670.    <!ENTITY rlo  SDATA "[rlo   ]"--=right-to-left override-->
  671.  
  672.  
  673.  
  674.                         Expires 20 February 1996       [Page 12]
  675.  
  676. Internet Draft          HTML internationalization         15 August 1995
  677.  
  678.  
  679.    These correspond to the following characters from ISO/IEC
  680.    10646-1:1993 (with the equivalent numeric character reference added
  681.    at the right):
  682.  
  683.    0x200C ZERO WIDTH NON-JOINER         ‌
  684.    0x200D ZERO WIDTH JOINER             ‍
  685.    0x200E LEFT-TO-RIGHT MARK            ‎
  686.    0x200F RIGHT-TO-LEFT MARK            ‏
  687.    0x202A LEFT-TO-RIGHT EMBEDDING       ‪
  688.    0x202B RIGHT-TO-LEFT EMBEDDING       ‫
  689.    0x202C POP DIRECTIONAL FORMATTING    ‬
  690.    0x202D LEFT-TO-RIGHT OVERRIDE        ‭
  691.    0x202E RIGHT-TO-LEFT OVERRIDE        ‮
  692.  
  693.    These entities affect the ability to render BIDI text in a semanti-
  694.    cally legible fashion.  That is, without these special BIDI charac-
  695.    ters, cases arise which would prevent *any* rendering whatsoever that
  696.    reflected the basic meaning of the text. It is for this reason that
  697.    these special characters were added to Unicode (and, thence, to
  698.    ISO/IEC 10646).  If it were possible to do reliable layout and ren-
  699.    dering of bidirectionnal text without them, they definitely would not
  700.    have been included in Unicode (at least not the stateful characters:
  701.    LRE, RLE, LRO, LRO, and PDF).  They are needed for the following:
  702.  
  703.         1. RTL MARK, LTR MARK - used to disambiguate directionality
  704.         of directionally neutral characters, e.g., if you have a
  705.         double quote sitting between an Arabic and a Latin letter,
  706.         then which direction does the quote resolve to?  These
  707.         characters are like zero width spaces which have a direc-
  708.         tional property (but no word/line break property).
  709.  
  710.         2. ZWJ, ZWNJ - used to force or block joining behavior in
  711.         contexts which joining would occur but should not or would
  712.         not occur but should.  For example, ARABIC LETTER HEH is
  713.         used to abbreviate "Hijri" (the Islamic calendrical sys-
  714.         tem); however, the isolated form of HEH looks like the
  715.         digit five as employed in Arabic script (actually based on
  716.         Indic digits).  In order to prevent one from reading HEH as
  717.         a final digit five in a year, the initial form of HEH is
  718.         used.  However, there is no following context (i.e., a
  719.         joining letter) to which the HEH can join.  Therefore, the
  720.         ZWJ is used to provide that context.  In Farsi texts, there
  721.         are cases where a letter that normally would join a subse-
  722.         quent letter in a cursive connection does not.  Here the
  723.         ZWNJ is used.
  724.  
  725.         3. RTL EMBEDDING, LTR EMBEDDING is used to handle nested
  726.         directional runs such as:
  727.  
  728.  
  729.  
  730.                         Expires 20 February 1996       [Page 13]
  731.  
  732. Internet Draft          HTML internationalization         15 August 1995
  733.  
  734.  
  735.         Given the following latin/arabic letters in backing store
  736.         with the specified embeddings:
  737.  
  738.         LRE L0 L1 RLE A0 A1 LRE L2 L3 PDF A2 A3 PDF L4 L5 PDF
  739.  
  740.         One gets the following rendering (with [] showing the
  741.         directional transitions):
  742.  
  743.         [ L0 L1 [ A3 A2 [ L2 L3 ] A1 A0 ] L4 L5 ]
  744.  
  745.         On the other hand, without these characters, e.g., with
  746.  
  747.         L0 L1 A0 A1 L2 L3 A2 A3 L4 L5
  748.  
  749.         and a base level of LTR one gets the following rendering:
  750.  
  751.         [ L0 L1 [ A1 A0 ] L2 L3 [ A3 A2 ] L4 L5 ]
  752.  
  753.         Notice that A1,A0 is on the left and A3,A2 on the right
  754.         unlike the above case where the embedding levels are used.
  755.         Without the embedding characters one has at most two lev-
  756.         els: a base directional level and a single counterflow
  757.         directional level.
  758.  
  759.         A common need for the embedding characters is to handle
  760.         text that has been pasted from one bidi context to another
  761.         and the possibility of multiply embedding pastings.
  762.  
  763.         4. LTR OVERRIDE, RTL OVERRIDE - these are needed to deal
  764.         with unusual pieces of text in which directionality cannot
  765.         be resolved from context in an unambiguous fashion. For
  766.         example, in part numbers, formulas, telephone numbers, and
  767.         other similar pieces of text, it is difficult or impossible
  768.         to derive the directionality of numbers, punctuation, and
  769.         other neutrals from their context.
  770.  
  771.    To handle the case of the directional controls appearing directly in
  772.    the text as coded characters, a new element, entities and SHORTREFS
  773.    are defined:
  774.  
  775.    <!ELEMENT BIDI - - (%text)+>
  776.    <!ATTLIST BIDI
  777.            %attrs;
  778.            DIR   (ltr|rtl) #IMPLIED
  779.            FORCE (gad|dag) #IMPLIED
  780.            >
  781.  
  782.    The dir attribute corresponds to the 'embedding' entities (lre and
  783.  
  784.  
  785.  
  786.                         Expires 20 February 1996       [Page 14]
  787.  
  788. Internet Draft          HTML internationalization         15 August 1995
  789.  
  790.  
  791.    rle), while the FORCE attribute corresponds to the 'override' ones
  792.    (lro and rlo).  Different allowed values of these attributes have to
  793.    be used because of the quixotic semantics of SGML regarding tokens in
  794.    name token groups.  To support the occurrence of Unicode BIDI charac-
  795.    ters in text (as coded characters), the following is defined:
  796.  
  797.    <!ENTITY lretag "<BIDI DIR=LTR>"        >
  798.    <!ENTITY rletag "<BIDI DIR=RTL>"        >
  799.    <!ENTITY lrotag "<BIDI FORCE=GAD>"      >
  800.    <!ENTITY rlotag "<BIDI FORCE=DAG>"      >
  801.    <!ENTITY pdftag "</BIDI>"               >
  802.    <!SHORTREF bidi "&#LRE;" lretag
  803.                    "&#RLE;" rletag
  804.                    "&#LRO;" lrotag
  805.                    "&#RLO;" rlotag
  806.                    "&#PDF;" pdftag
  807.    >
  808.  
  809.    In this case LRE, RLE, LRO, RLO, and PDF have to be declared as func-
  810.    tion names (mapped to the appropriate character numbers) in the SGML
  811.    declaration's concrete syntax:
  812.  
  813.    FUNCTION
  814.           LRE FUNCHAR    8234   -- LEFT-TO-RIGHT EMBEDDING    --
  815.           RLE FUNCHAR    8235   -- RIGHT-TO-LEFT EMBEDDING    --
  816.           PDF FUNCHAR    8236   -- POP DIRECTIONAL FORMATTING --
  817.           LRO FUNCHAR    8237   -- LEFT-TO-RIGHT OVERRIDE     --
  818.           RLO FUNCHAR    8238   -- RIGHT-TO-LEFT OVERRIDE     --
  819.  
  820.    The above shortrefs and <BIDI> element allow dealing with existing
  821.    text containing bidi controls, and doing so in the framework of
  822.    marked up text.
  823.  
  824.    Another additional element is important to have for proper language-
  825.    dependent rendering.  Short quotations, and in particular the quota-
  826.    tion marks surrounding them, are typically rendered differently in
  827.    different languages and on platforms with different graphic capabili-
  828.    ties: "a quotation in English", `another, slightly better one', ,,a
  829.    quotation in German", << a quotation in French >>.  The <Q> element
  830.    is introduced for that purpose.
  831.  
  832. 5. Forms
  833.  
  834.  
  835. 5.1. DTD additions
  836.  
  837.    It is natural to expect input in any language in forms, as they pro-
  838.    vide one of the only ways of obtaining user input. While this is
  839.  
  840.  
  841.  
  842.                         Expires 20 February 1996       [Page 15]
  843.  
  844. Internet Draft          HTML internationalization         15 August 1995
  845.  
  846.  
  847.    primarily a UI issue, there are some things that should be specified
  848.    at the HTML level to guide behavior and promote interoperability.
  849.  
  850.    One is to add variants of the INPUT element corresponding to the ele-
  851.    ments described in section 4.2, thus allowing locale-independent
  852.    transmission of dates, times, etc. to a server.  Specifically, DATE,
  853.    TIME, MEASURE and MONEY are added as possible values of the TYPE
  854.    attribute of the INPUT ELEMENT.  Prior to transmission, the data
  855.    should be converted to a canonical form, where possible. For example,
  856.    if a user entered "24/12/1996" into a DATE field, it should be con-
  857.    verted to "1996-12-24" when transmitted. Where this is not possible,
  858.    information corresponding to the attributes of the elements defined
  859.    need to be transmitted as well. This can be accomplished by expanding
  860.    capabilities of the value part of the name-value pairs used to trans-
  861.    mit forms data. The following syntax is recommended:
  862.  
  863.            forms-data     =  pair-list*
  864.            pair-list      =  pair ";" pair-list | pair
  865.            pair           =  name  "=" value
  866.            name           =  text
  867.            value          =  simple-value | complex-value
  868.            simple-value   =  text
  869.            complex-value  = "(" pair-list* ")"
  870.  
  871.    In complex-values, the name of the attribute is used as the name part
  872.    of the name-value pair, "value" being the most common one.For exam-
  873.    ple, a date might be transmitted as:
  874.  
  875.            date=(value=24/12/96;calendar=gregorian;lang=en-uk)
  876.  
  877.    suitably encoded.
  878.  
  879.    To ensure interoperability, it is necessary for the user agent (and
  880.    the user) to have an indication of the character set(s) that the
  881.    server providing a form will be able to handle upon submission of the
  882.    filled-in form.  Such an indication is provided by the ACCEPT-CHARSET
  883.    attribute of the FORM element, modeled on the HTTP Accept-Charset
  884.    header (see [HTTP]), which contains a space and/or comma delimited
  885.    list of character sets acceptable to the server.  A user agent may
  886.    want to somehow advise the user of the contents of this attribute, or
  887.    to restrict his possibility to enter unacceptable characters.
  888.  
  889.         NOTE -- The list of character sets is to be interpreted as
  890.         an EXCLUSIVE-OR list; the server announces that it is ready
  891.         to accept any ONE of these character encoding schemes for
  892.         each part of a multipart entity.
  893.  
  894.  
  895.  
  896.  
  897.  
  898.                         Expires 20 February 1996       [Page 16]
  899.  
  900. Internet Draft          HTML internationalization         15 August 1995
  901.  
  902.  
  903. 5.2. Form submission
  904.  
  905.    The HTML 2.0 form submission mechanism, based on the "application/x-
  906.    www-form-urlencoded" media type, is hopelessly broken with regard to
  907.    internationalization.  In fact, since URLs are restricted to ASCII
  908.    characters, the mechanism is broken even for ISO-8859-1 text.  Sec-
  909.    tion 2.2 of [RFC1738] specifies that octets may be encoded using the
  910.    "%HH" notation, but text submitted from a form is composed of charac-
  911.    ters, not octets.  Lacking a specification of a character encoding
  912.    scheme, the "%HH" notation has no meaning.
  913.  
  914.    A partial solution to this sorry state of affairs is to specify a
  915.    default character encoding scheme to be assumed when the GET method
  916.    of form submission is used.  Specifying UCS-2 would break all exist-
  917.    ing forms, so the only sensible way is to designate ISO-8859-1.  That
  918.    is, the encoded URL sent to submit a form by the GET method is to be
  919.    interpreted as a sequence of single-octet characters encoded accord-
  920.    ing to ISO-8859-1, and further encoded according to the scheme of
  921.    [RFC1738] (the "%HH" notation).  This is clearly insufficient, so the
  922.    GET method of form submission is deprecated and should not be used in
  923.    future documents, despite the language of section XX of [HTML-2].
  924.  
  925.    A better solution is to add a MIME charset parameter to the Content-
  926.    Type header sent along with a POST method form submission, with the
  927.    understanding that the URL encoding of [RFC1738] is applied on top of
  928.    the specified character encoding, as a kind of implicit Content-
  929.    Transfer-Encoding.  The default ISO-8859-1 is to be implied in the
  930.    absence of a charset parameter.
  931.  
  932.    The best solution is to use the "multipart/form-data" media type
  933.    described in [FILE-UPLOAD] with the POST method of form submission.
  934.    This mechanism encapsulates the value part of each name-value pair in
  935.    a body-part of a multipart MIME body that is sent as the HTTP entity;
  936.    each body part can be labeled with an appropriate Content-Type,
  937.    including if necessary a charset parameter that specifies the charac-
  938.    ter encoding scheme.  The changes to the DTD necessary to support
  939.    this method of form submission have been incorporated in the DTD
  940.    included in this specification.
  941.  
  942.    How the user agent determines the encoding of the text entered by the
  943.    user is outside the scope of this specification.
  944.  
  945. 6. Miscellaneous
  946.  
  947.    Proper interpretation of a text document requires that the character
  948.    encoding scheme be known.  Current HTTP servers, however, do not gen-
  949.    erally include an appropriate charset parameter with the Content-Type
  950.    header, even when the encoding scheme is different from the default
  951.  
  952.  
  953.  
  954.                         Expires 20 February 1996       [Page 17]
  955.  
  956. Internet Draft          HTML internationalization         15 August 1995
  957.  
  958.  
  959.    ISO-8859-1.  This is bad behaviour, and as such strongly discouraged,
  960.    but some preventive measures can be taken to minimize the detrimental
  961.    effects.
  962.  
  963.    In the case where a document is accessed from a hyperlink in an ori-
  964.    gin HTML document, a CHARSET attribute is added to the attribute list
  965.    of elements with link semantics (A and LINK), specifically by adding
  966.    it to the linkExtraAttributes entity.  The value of that attribute is
  967.    to be considered a hint to the User Agent as to the character encod-
  968.    ing scheme used by the ressource pointed to by the hyperlink; it
  969.    should be the appropriate value of the MIME charset parameter for
  970.    that ressource.
  971.  
  972.    In any document, it may be wise to include an indication of the
  973.    encoding scheme like the following, as early as possible within the
  974.    HEAD of the document:
  975.  
  976.     <META HTTP-EQUIV="Content-Type"
  977.      CONTENT="text/html; charset=ISO-2022-JP">
  978.  
  979.    This is not foolproof, but will work if the encoding scheme is such
  980.    that ASCII characters stand for themselves at least until the META
  981.    element is parsed.
  982.  
  983.    For definiteness, the "charset" parameter received from the source of
  984.    the document should be considered the most authoritative, followed in
  985.    order of preference by the contents of a META element such as the
  986.    above, and finally the CHARSET parameter of the anchor that was fol-
  987.    lowed (if any).
  988.  
  989. 7. HTML Public Text
  990.  
  991. 7.1. HTML DTD
  992.  
  993.    <!--    html-2.x.dtd
  994.  
  995.            Document Type Definition for the HyperText Markup Language,
  996.            version 2.x (HTML DTD)
  997.  
  998.            Authors: Daniel W. Connolly <connolly@w3.org>
  999.                     Franτois Yergeau <yergeau@alis.com>
  1000.    -->
  1001.  
  1002.    <!ENTITY % HTML.Version
  1003.            "-//IETF//DTD HTML 2.x//EN"
  1004.  
  1005.            -- Typical usage:
  1006.  
  1007.  
  1008.  
  1009.  
  1010.                         Expires 20 February 1996       [Page 18]
  1011.  
  1012. Internet Draft          HTML internationalization         15 August 1995
  1013.  
  1014.  
  1015.                <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.x//EN">
  1016.                <html>
  1017.                ...
  1018.                </html>
  1019.            --
  1020.            >
  1021.  
  1022.  
  1023.    <!--============ Feature Test Entities ========================-->
  1024.  
  1025.    <!ENTITY % HTML.Recommended "IGNORE"
  1026.            -- Certain features of the language are necessary for
  1027.               compatibility with widespread usage, but they may
  1028.               compromise the structural integrity of a document.
  1029.               This feature test entity enables a more prescriptive
  1030.               document type definition that eliminates
  1031.               those features.
  1032.            -->
  1033.  
  1034.    <![ %HTML.Recommended [
  1035.            <!ENTITY % HTML.Deprecated "IGNORE">
  1036.    ]]>
  1037.  
  1038.    <!ENTITY % HTML.Deprecated "INCLUDE"
  1039.            -- Certain features of the language are necessary for
  1040.               compatibility with earlier versions of the specification,
  1041.               but they tend to be used and implemented inconsistently,
  1042.               and their use is deprecated. This feature test entity
  1043.               enables a document type definition that eliminates
  1044.               these features.
  1045.            -->
  1046.  
  1047.    <!ENTITY % HTML.Highlighting "INCLUDE"
  1048.            -- Use this feature test entity to validate that a
  1049.               document uses no highlighting tags, which may be
  1050.               ignored on minimal implementations.
  1051.            -->
  1052.  
  1053.    <!ENTITY % HTML.Forms "INCLUDE"
  1054.            -- Use this feature test entity to validate that a document
  1055.               contains no forms, which may not be supported in minimal
  1056.               implementations
  1057.            -->
  1058.  
  1059.    <!ENTITY % HTML.Bidi "INCLUDE"
  1060.            -- Use this feature test entity to validate that a document
  1061.               does not use the BIDI element, entities and SHORTREFs,
  1062.               which may not be supported in some implementations
  1063.  
  1064.  
  1065.  
  1066.                         Expires 20 February 1996       [Page 19]
  1067.  
  1068. Internet Draft          HTML internationalization         15 August 1995
  1069.  
  1070.  
  1071.            -->
  1072.  
  1073.    <!--============== Imported Names ==============================-->
  1074.  
  1075.    <!ENTITY % Content-Type "CDATA"
  1076.            -- meaning an internet media type
  1077.               (aka MIME content type, as per RFC1521)
  1078.            -->
  1079.  
  1080.    <!ENTITY % HTTP-Method "GET | POST"
  1081.            -- as per HTTP specification, in progress
  1082.            -->
  1083.  
  1084.    <!ENTITY % URI "CDATA"
  1085.            -- The term URI means a CDATA attribute
  1086.               whose value is a Uniform Resource Identifier.
  1087.               The syntax is defined by
  1088.  
  1089.               RFC 1808, "Relative Uniform Resource Locators."
  1090.               R. Fielding, June 1995
  1091.  
  1092.            Note that CDATA attributes are limited by the LITLEN
  1093.            capacity (1024 in the current version of html.decl),
  1094.            so that URIs in HTML have a bounded length.
  1095.  
  1096.            -->
  1097.  
  1098.  
  1099.    <!--========= DTD "Macros" =====================-->
  1100.  
  1101.    <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
  1102.  
  1103.    <!ENTITY % list " UL | OL | DIR | MENU " >
  1104.  
  1105.    <!ENTITY % attrs -- common attributes for elements --
  1106.             "lang  NAME   #IMPLIED  -- RFC 1766 language tag --">
  1107.             <!--or CDATA?-->
  1108.  
  1109.    <!--======= Character mnemonic entities =================-->
  1110.  
  1111.    <!ENTITY % ISOlat1 PUBLIC
  1112.      "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
  1113.    %ISOlat1;
  1114.  
  1115.    <!ENTITY amp CDATA "&"     -- ampersand          -->
  1116.    <!ENTITY gt CDATA ">"      -- greater than       -->
  1117.    <!ENTITY lt CDATA "<"      -- less than          -->
  1118.    <!ENTITY quot CDATA """    -- double quote       -->
  1119.  
  1120.  
  1121.  
  1122.                         Expires 20 February 1996       [Page 20]
  1123.  
  1124. Internet Draft          HTML internationalization         15 August 1995
  1125.  
  1126.  
  1127.    <!--========= SGML Document Access (SDA) Parameter Entities =====-->
  1128.  
  1129.    <!-- HTML 2.0 contains SGML Document Access (SDA) fixed attributes
  1130.    in support of easy transformation to the International Committee
  1131.    for Accessible Document Design (ICADD) DTD
  1132.             "-//EC-USA-CDA/ICADD//DTD ICADD22//EN".
  1133.    ICADD applications are designed to support usable access to
  1134.    structured information by print-impaired individuals through
  1135.    Braille, large print and voice synthesis.  For more information on
  1136.    SDA & ICADD:
  1137.            - ISO 12083:1993, Annex A.8, Facilities for Braille,
  1138.              large print and computer voice
  1139.            - ICADD ListServ
  1140.              <ICADD%ASUACAD.BITNET@ARIZVM1.ccit.arizona.edu>
  1141.            - Usenet news group bit.listserv.easi
  1142.            - Recording for the Blind, +1 800 221 4792
  1143.    -->
  1144.  
  1145.    <!ENTITY % SDAFORM  "SDAFORM  CDATA  #FIXED"
  1146.              -- one to one mapping        -->
  1147.    <!ENTITY % SDARULE  "SDARULE  CDATA  #FIXED"
  1148.              -- context-sensitive mapping -->
  1149.    <!ENTITY % SDAPREF  "SDAPREF  CDATA  #FIXED"
  1150.              -- generated text prefix     -->
  1151.    <!ENTITY % SDASUFF  "SDASUFF  CDATA  #FIXED"
  1152.              -- generated text suffix     -->
  1153.    <!ENTITY % SDASUSP  "SDASUSP  NAME   #FIXED"
  1154.              -- suspend transform process -->
  1155.  
  1156.  
  1157.    <!--========= Entities for bidirectionnal text (BIDI) =========-->
  1158.  
  1159.    <![ %HTML.Bidi [
  1160.  
  1161.    <!ENTITY % HTMLbidi PUBLIC
  1162.      "-//IETF//ENTITIES bidi//EN//HTML">
  1163.    %HTMLbidi;
  1164.  
  1165.    <!-- The following, together with the BIDI element, allow dealing
  1166.         with text containing BIDI controls in the context of marked
  1167.         up text. -->
  1168.    <!ENTITY lretag "<BIDI DIR=LTR>"        >
  1169.    <!ENTITY rletag "<BIDI DIR=RTL>"        >
  1170.    <!ENTITY lrotag "<BIDI FORCE=GAD>"      >
  1171.    <!ENTITY rlotag "<BIDI FORCE=DAG>"      >
  1172.    <!ENTITY pdftag "</BIDI>"               >
  1173.    <!SHORTREF bidi
  1174.            "&#LRE;" lretag
  1175.  
  1176.  
  1177.  
  1178.                         Expires 20 February 1996       [Page 21]
  1179.  
  1180. Internet Draft          HTML internationalization         15 August 1995
  1181.  
  1182.  
  1183.            "&#RLE;" rletag
  1184.            "&#PDF;" pdftag
  1185.            "&#LRO;" lrotag
  1186.            "&#RLO;" rlotag
  1187.            >
  1188.  
  1189.    ]]>
  1190.  
  1191.    <!--========== Text Markup =====================-->
  1192.  
  1193.    <!ENTITY % loc.values "DATE | TIME | MEASURE | MONEY">
  1194.  
  1195.    <![ %HTML.Highlighting [
  1196.  
  1197.    <!ENTITY % font " TT | B | I ">
  1198.  
  1199.    <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE | Q">
  1200.  
  1201.    <![ %HTML.Bidi [
  1202.    <!ENTITY % text "#PCDATA | A | IMG | BR | %phrase | %font | LANG | BIDI | %loc.values">
  1203.    ]]>
  1204.  
  1205.    <!ENTITY % text "#PCDATA | A | IMG | BR | %phrase | %font | LANG | %loc.values">
  1206.  
  1207.    <!ELEMENT (%font;|%phrase) - - (%text)*>
  1208.    <!ATTLIST ( TT | CODE | SAMP | KBD | VAR )
  1209.            %attrs;
  1210.            %SDAFORM; "Lit"
  1211.            >
  1212.    <!ATTLIST ( B | STRONG )
  1213.            %attrs;
  1214.            %SDAFORM; "B"
  1215.            >
  1216.    <!ATTLIST ( I | EM | CITE )
  1217.            %attrs;
  1218.            %SDAFORM; "It"
  1219.            >
  1220.  
  1221.    <!-- <TT>       Typewriter text                         -->
  1222.    <!-- <B>        Bold text                               -->
  1223.    <!-- <I>        Italic text                             -->
  1224.    <!-- <EM>       Emphasized phrase                       -->
  1225.    <!-- <STRONG>   Strong emphasis                         -->
  1226.    <!-- <CODE>     Source code phrase                      -->
  1227.    <!-- <SAMP>     Sample text or characters               -->
  1228.    <!-- <KBD>      Keyboard phrase, e.g. user input        -->
  1229.    <!-- <VAR>      Variable phrase or substituable         -->
  1230.    <!-- <CITE>     Name or title of cited work             -->
  1231.  
  1232.  
  1233.  
  1234.                         Expires 20 February 1996       [Page 22]
  1235.  
  1236. Internet Draft          HTML internationalization         15 August 1995
  1237.  
  1238.  
  1239.    <!ENTITY % pre.content "#PCDATA | A | HR | BR | %font | %phrase | LANG">
  1240.  
  1241.    ]]>
  1242.  
  1243.    <![ %HTML.Bidi [
  1244.  
  1245.    <!ENTITY % text "#PCDATA | A | IMG | BR | LANG | BIDI | Q | %loc.values">
  1246.  
  1247.    <!-- Should the BIDI element have an SDAFORM attr.?  Which? -->
  1248.    <!ELEMENT BIDI - - (%text)+>
  1249.    <!ATTLIST BIDI
  1250.            %attrs;
  1251.            DIR   (ltr|rtl) #IMPLIED
  1252.            FORCE (gad|dag) #IMPLIED
  1253.            >
  1254.  
  1255.    <!-- <BIDI>     Control bidirectionnal text             -->
  1256.  
  1257.    ]]>
  1258.  
  1259.    <!ENTITY % text "#PCDATA | A | IMG | BR | LANG | Q | %loc.values">
  1260.  
  1261.    <!ELEMENT BR    - O EMPTY>
  1262.    <!ATTLIST BR
  1263.            %SDAPREF; "&#RE;"
  1264.            >
  1265.  
  1266.    <!-- <BR>       Line break      -->
  1267.  
  1268.    <!-- Should the LANG element have an SDAFORM attr.?  Which? -->
  1269.    <!ELEMENT LANG - - (text)*>
  1270.    <!ATTLIST LANG
  1271.            %attrs;
  1272.            >
  1273.  
  1274.    <!-- <LANG>     Container for language attribute        -->
  1275.  
  1276.    <!ATTLIST Q
  1277.            %attrs;
  1278.            %SDAFORM; "It"  -- to be verified --
  1279.            >
  1280.    <!-- <Q>        Short quotation                         -->
  1281.  
  1282.    <!--========= Date, time, measures and monetary amounts ===========-->
  1283.  
  1284.    <!ELEMENT (%loc.values) - O EMPTY>
  1285.    <!ATTLIST DATE
  1286.            %attrs;
  1287.  
  1288.  
  1289.  
  1290.                         Expires 20 February 1996       [Page 23]
  1291.  
  1292. Internet Draft          HTML internationalization         15 August 1995
  1293.  
  1294.  
  1295.            CALENDAR  CDATA  #IMPLIED
  1296.            VALUE     CDATA  #REQUIRED
  1297.            >
  1298.    <!ATTLIST TIME
  1299.            %attrs;
  1300.            ZONE      CDATA  #IMPLIED
  1301.            VALUE     CDATA  #REQUIRED
  1302.            >
  1303.    <!ATTLIST MEASURE
  1304.            %attrs;
  1305.            TYPE      (weight|count|length|area|volume)  #REQUIRED
  1306.            UNIT      CDATA                              #IMPLIED
  1307.            VALUE     CDATA                              #REQUIRED
  1308.            >
  1309.    <!ATTLIST MONEY
  1310.            %attrs;
  1311.            UNIT      CDATA                              #REQUIRED
  1312.            VALUE     CDATA                              #REQUIRED
  1313.            >
  1314.  
  1315.    <!-- DATE       A date value                          -->
  1316.    <!-- TIME       A time value                          -->
  1317.    <!-- MEASURE    A measurement (length, weight, etc)   -->
  1318.    <!-- MONEY      A monetary amount                     -->
  1319.  
  1320.    <!--========= Link Markup ======================-->
  1321.  
  1322.    <!ENTITY % linkType "NAME">
  1323.  
  1324.    <!ENTITY % linkExtraAttributes
  1325.            "REL %linkType #IMPLIED
  1326.            REV %linkType #IMPLIED
  1327.            URN CDATA #IMPLIED
  1328.            TITLE CDATA #IMPLIED
  1329.            METHODS NAMES #IMPLIED
  1330.            CHARSET NAME #IMPLIED
  1331.            ">
  1332.  
  1333.    <![ %HTML.Recommended [
  1334.            <!ENTITY % A.content   "(%text)*"
  1335.            -- <H1><a name="xxx">Heading</a></H1>
  1336.                    is preferred to
  1337.               <a name="xxx"><H1>Heading</H1></a>
  1338.            -->
  1339.    ]]>
  1340.  
  1341.    <!ENTITY % A.content   "(%heading|%text)*">
  1342.  
  1343.  
  1344.  
  1345.  
  1346.                         Expires 20 February 1996       [Page 24]
  1347.  
  1348. Internet Draft          HTML internationalization         15 August 1995
  1349.  
  1350.  
  1351.    <!ELEMENT A     - - %A.content -(A)>
  1352.    <!ATTLIST A
  1353.            %attrs;
  1354.            HREF %URI #IMPLIED
  1355.            NAME CDATA #IMPLIED
  1356.            %linkExtraAttributes;
  1357.            %SDAPREF; "<Anchor: #AttList>"
  1358.            >
  1359.    <!-- <A>                Anchor; source/destination of link      -->
  1360.    <!-- <A NAME="...">     Name of this anchor                     -->
  1361.    <!-- <A HREF="...">     Address of link destination             -->
  1362.    <!-- <A URN="...">      Permanent address of destination        -->
  1363.    <!-- <A REL=...>        Relationship to destination             -->
  1364.    <!-- <A REV=...>        Relationship of destination to this     -->
  1365.    <!-- <A TITLE="...">    Title of destination (advisory)         -->
  1366.    <!-- <A CHARSET="...">  Charset of destination (advisory)               -->
  1367.    <!-- <A METHODS="...">  Operations on destination (advisory)    -->
  1368.  
  1369.  
  1370.    <!--========== Images ==========================-->
  1371.  
  1372.    <!ELEMENT IMG    - O EMPTY>
  1373.    <!ATTLIST IMG
  1374.            %attrs;
  1375.            SRC %URI;  #REQUIRED
  1376.            ALT CDATA #IMPLIED
  1377.            ALIGN (top|middle|bottom) #IMPLIED
  1378.            ISMAP (ISMAP) #IMPLIED
  1379.            %SDAPREF; "<Fig><?SDATrans Img: #AttList>#AttVal(Alt)</Fig>"
  1380.            >
  1381.  
  1382.    <!-- <IMG>              Image; icon, glyph or illustration      -->
  1383.    <!-- <IMG SRC="...">    Address of image object                 -->
  1384.    <!-- <IMG ALT="...">    Textual alternative                     -->
  1385.    <!-- <IMG ALIGN=...>    Position relative to text               -->
  1386.    <!-- <IMG ISMAP>        Each pixel can be a link                -->
  1387.  
  1388.    <!--========== Paragraphs=======================-->
  1389.  
  1390.    <!ELEMENT P     - O (%text)*>
  1391.    <!ATTLIST P
  1392.            %attrs;
  1393.            %SDAFORM; "Para"
  1394.            >
  1395.  
  1396.    <!-- <P>        Paragraph       -->
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.                         Expires 20 February 1996       [Page 25]
  1403.  
  1404. Internet Draft          HTML internationalization         15 August 1995
  1405.  
  1406.  
  1407.    <!--========== Headings, Titles, Sections ===============-->
  1408.  
  1409.    <!ELEMENT HR    - O EMPTY>
  1410.    <!ATTLIST HR
  1411.            %attrs;
  1412.            %SDAPREF; "&#RE;&#RE;"
  1413.            >
  1414.  
  1415.    <!-- <HR>       Horizontal rule -->
  1416.  
  1417.    <!ELEMENT ( %heading )  - -  (%text;)*>
  1418.    <!ATTLIST H1
  1419.            %attrs;
  1420.            %SDAFORM; "H1"
  1421.            >
  1422.    <!ATTLIST H2
  1423.            %attrs;
  1424.            %SDAFORM; "H2"
  1425.            >
  1426.    <!ATTLIST H3
  1427.            %attrs;
  1428.            %SDAFORM; "H3"
  1429.            >
  1430.    <!ATTLIST H4
  1431.            %attrs;
  1432.            %SDAFORM; "H4"
  1433.            >
  1434.    <!ATTLIST H5
  1435.            %attrs;
  1436.            %SDAFORM; "H5"
  1437.            >
  1438.    <!ATTLIST H6
  1439.            %attrs;
  1440.            %SDAFORM; "H6"
  1441.            >
  1442.  
  1443.    <!-- <H1>       Heading, level 1 -->
  1444.    <!-- <H2>       Heading, level 2 -->
  1445.    <!-- <H3>       Heading, level 3 -->
  1446.    <!-- <H4>       Heading, level 4 -->
  1447.    <!-- <H5>       Heading, level 5 -->
  1448.    <!-- <H6>       Heading, level 6 -->
  1449.  
  1450.  
  1451.    <!--========== Text Flows ======================-->
  1452.  
  1453.    <![ %HTML.Forms [
  1454.            <!ENTITY % block.forms "BLOCKQUOTE | FORM | ISINDEX">
  1455.  
  1456.  
  1457.  
  1458.                         Expires 20 February 1996       [Page 26]
  1459.  
  1460. Internet Draft          HTML internationalization         15 August 1995
  1461.  
  1462.  
  1463.    ]]>
  1464.  
  1465.    <!ENTITY % block.forms "BLOCKQUOTE">
  1466.  
  1467.    <![ %HTML.Deprecated [
  1468.            <!ENTITY % preformatted "PRE | XMP | LISTING">
  1469.    ]]>
  1470.  
  1471.    <!ENTITY % preformatted "PRE">
  1472.  
  1473.    <!ENTITY % block "P | %list | DL
  1474.            | %preformatted
  1475.            | %block.forms">
  1476.  
  1477.    <!ENTITY % flow "(%text|%block)*">
  1478.  
  1479.    <!ENTITY % pre.content "#PCDATA | A | HR | BR | LANG">
  1480.    <!ELEMENT PRE - - (%pre.content)*>
  1481.    <!ATTLIST PRE
  1482.            %attrs;
  1483.            WIDTH NUMBER #implied
  1484.            %SDAFORM; "Lit"
  1485.            >
  1486.  
  1487.    <!-- <PRE>              Preformatted text               -->
  1488.    <!-- <PRE WIDTH=...>    Maximum characters per line     -->
  1489.  
  1490.    <![ %HTML.Deprecated [
  1491.  
  1492.    <!ENTITY % literal "CDATA"
  1493.            -- historical, non-conforming parsing mode where
  1494.               the only markup signal is the end tag
  1495.               in full
  1496.            -->
  1497.  
  1498.    <!ELEMENT (XMP|LISTING) - -  %literal>
  1499.    <!ATTLIST XMP
  1500.            %attrs;
  1501.            %SDAFORM; "Lit"
  1502.            %SDAPREF; "Example:&#RE;"
  1503.            >
  1504.    <!ATTLIST LISTING
  1505.            %attrs;
  1506.            %SDAFORM; "Lit"
  1507.            %SDAPREF; "Listing:&#RE;"
  1508.            >
  1509.  
  1510.    <!-- <XMP>              Example section         -->
  1511.  
  1512.  
  1513.  
  1514.                         Expires 20 February 1996       [Page 27]
  1515.  
  1516. Internet Draft          HTML internationalization         15 August 1995
  1517.  
  1518.  
  1519.    <!-- <LISTING>          Computer listing        -->
  1520.  
  1521.    <!ELEMENT PLAINTEXT - O %literal>
  1522.    <!-- <PLAINTEXT>        Plain text passage      -->
  1523.  
  1524.    <!ATTLIST PLAINTEXT
  1525.            %attrs;
  1526.            %SDAFORM; "Lit"
  1527.            >
  1528.    ]]>
  1529.  
  1530.  
  1531.    <!--========== Lists ==================-->
  1532.  
  1533.    <!ELEMENT DL    - -  (DT | DD)+>
  1534.    <!ATTLIST DL
  1535.            %attrs;
  1536.            COMPACT (COMPACT) #IMPLIED
  1537.            %SDAFORM; "List"
  1538.            %SDAPREF; "Definition List:"
  1539.            >
  1540.  
  1541.    <!ELEMENT DT    - O (%text)*>
  1542.    <!ATTLIST DT
  1543.            %attrs;
  1544.            %SDAFORM; "Term"
  1545.            >
  1546.  
  1547.    <!ELEMENT DD    - O %flow>
  1548.    <!ATTLIST DD
  1549.            %attrs;
  1550.            %SDAFORM; "LItem"
  1551.            >
  1552.  
  1553.    <!-- <DL>               Definition list, or glossary    -->
  1554.    <!-- <DL COMPACT>       Compact style list              -->
  1555.    <!-- <DT>               Term in definition list         -->
  1556.    <!-- <DD>               Definition of term              -->
  1557.  
  1558.    <!ELEMENT (OL|UL) - -  (LI)+>
  1559.    <!ATTLIST OL
  1560.            %attrs;
  1561.            COMPACT (COMPACT) #IMPLIED
  1562.            %SDAFORM; "List"
  1563.            >
  1564.    <!ATTLIST UL
  1565.            %attrs;
  1566.            COMPACT (COMPACT) #IMPLIED
  1567.  
  1568.  
  1569.  
  1570.                         Expires 20 February 1996       [Page 28]
  1571.  
  1572. Internet Draft          HTML internationalization         15 August 1995
  1573.  
  1574.  
  1575.            %SDAFORM; "List"
  1576.            >
  1577.    <!-- <UL>               Unordered list                  -->
  1578.    <!-- <UL COMPACT>       Compact list style              -->
  1579.    <!-- <OL>               Ordered, or numbered list       -->
  1580.    <!-- <OL COMPACT>       Compact list style              -->
  1581.  
  1582.  
  1583.    <!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
  1584.    <!ATTLIST DIR
  1585.            %attrs;
  1586.            COMPACT (COMPACT) #IMPLIED
  1587.            %SDAFORM; "List"
  1588.            %SDAPREF; "<LHead>Directory</LHead>"
  1589.            >
  1590.    <!ATTLIST MENU
  1591.            %attrs;
  1592.            COMPACT (COMPACT) #IMPLIED
  1593.            %SDAFORM; "List"
  1594.            %SDAPREF; "<LHead>Menu</LHead>"
  1595.            >
  1596.  
  1597.    <!-- <DIR>              Directory list                  -->
  1598.    <!-- <DIR COMPACT>      Compact list style              -->
  1599.    <!-- <MENU>             Menu list                       -->
  1600.    <!-- <MENU COMPACT>     Compact list style              -->
  1601.  
  1602.    <!ELEMENT LI    - O %flow>
  1603.    <!ATTLIST LI
  1604.            %attrs;
  1605.            %SDAFORM; "LItem"
  1606.            >
  1607.  
  1608.    <!-- <LI>               List item                       -->
  1609.  
  1610.    <!--========== Document Body ===================-->
  1611.  
  1612.    <![ %HTML.Recommended [
  1613.            <!ENTITY % body.content "(%heading|%block|HR|ADDRESS|IMG)*"
  1614.            -- <h1>Heading</h1>
  1615.               <p>Text ...
  1616.                    is preferred to
  1617.               <h1>Heading</h1>
  1618.               Text ...
  1619.            -->
  1620.    ]]>
  1621.  
  1622.    <!ENTITY % body.content "(%heading | %text | %block | HR | ADDRESS)*">
  1623.  
  1624.  
  1625.  
  1626.                         Expires 20 February 1996       [Page 29]
  1627.  
  1628. Internet Draft          HTML internationalization         15 August 1995
  1629.  
  1630.  
  1631.    <!ELEMENT BODY O O  %body.content>
  1632.    <!ATTLIST BODY
  1633.            %attrs;
  1634.            >
  1635.  
  1636.    <!-- <BODY>     Document body   -->
  1637.  
  1638.    <!ELEMENT BLOCKQUOTE - - %body.content>
  1639.    <!ATTLIST BLOCKQUOTE
  1640.            %attrs;
  1641.            %SDAFORM; "BQ"
  1642.            >
  1643.  
  1644.    <!-- <BLOCKQUOTE>       Quoted passage  -->
  1645.  
  1646.    <!ELEMENT ADDRESS - - (%text|P)*>
  1647.    <!ATTLIST  ADDRESS
  1648.            %attrs;
  1649.            %SDAFORM; "Lit"
  1650.            %SDAPREF; "Address:&#RE;"
  1651.            >
  1652.  
  1653.    <!-- <ADDRESS>  Address, signature, or byline   -->
  1654.  
  1655.  
  1656.    <!--======= Forms ====================-->
  1657.  
  1658.    <![ %HTML.Forms [
  1659.  
  1660.    <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
  1661.    <!ATTLIST FORM
  1662.            %attrs;
  1663.            ACTION %URI #IMPLIED
  1664.            METHOD (%HTTP-Method) GET
  1665.            ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
  1666.            ACCEPT-CHARSET CDATA #IMPLIED
  1667.            %SDAPREF; "<Para>Form:</Para>"
  1668.            %SDASUFF; "<Para>Form End.</Para>"
  1669.            >
  1670.  
  1671.    <!-- <FORM>                     Fill-out or data-entry form     -->
  1672.    <!-- <FORM ACTION="...">        Address for completed form      -->
  1673.    <!-- <FORM METHOD=...>          Method of submitting form       -->
  1674.    <!-- <FORM ENCTYPE="...">       Representation of form data     -->
  1675.  
  1676.    <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
  1677.                           RADIO | SUBMIT | RESET |
  1678.                           IMAGE | HIDDEN | DATE |
  1679.  
  1680.  
  1681.  
  1682.                         Expires 20 February 1996       [Page 30]
  1683.  
  1684. Internet Draft          HTML internationalization         15 August 1995
  1685.  
  1686.  
  1687.                           TIME | MEASURE | MONEY |
  1688.                           FILE)">
  1689.    <!ELEMENT INPUT - O EMPTY>
  1690.    <!ATTLIST INPUT
  1691.            %attrs;
  1692.            TYPE %InputType TEXT
  1693.            NAME CDATA #IMPLIED
  1694.            VALUE CDATA #IMPLIED
  1695.            SRC %URI #IMPLIED
  1696.            CHECKED (CHECKED) #IMPLIED
  1697.            SIZE CDATA #IMPLIED
  1698.            MAXLENGTH NUMBER #IMPLIED
  1699.            ALIGN (top|middle|bottom) #IMPLIED
  1700.            ACCEPT CDATA #IMPLIED --list of content types --
  1701.            %SDAPREF; "Input: "
  1702.            >
  1703.  
  1704.    <!-- <INPUT>                    Form input datum                -->
  1705.    <!-- <INPUT TYPE=...>           Type of input interaction       -->
  1706.    <!-- <INPUT NAME=...>           Name of form datum              -->
  1707.    <!-- <INPUT VALUE="...">        Default/initial/selected value  -->
  1708.    <!-- <INPUT SRC="...">          Address of image                -->
  1709.    <!-- <INPUT CHECKED>            Initial state is "on"           -->
  1710.    <!-- <INPUT SIZE=...>           Field size hint                 -->
  1711.    <!-- <INPUT MAXLENGTH=...>      Data length maximum             -->
  1712.    <!-- <INPUT ALIGN=...>          Image alignment                 -->
  1713.  
  1714.    <!ELEMENT SELECT - - (OPTION+) -(INPUT|SELECT|TEXTAREA)>
  1715.    <!ATTLIST SELECT
  1716.            %attrs;
  1717.            NAME CDATA #REQUIRED
  1718.            SIZE NUMBER #IMPLIED
  1719.            MULTIPLE (MULTIPLE) #IMPLIED
  1720.            %SDAFORM; "List"
  1721.            %SDAPREF;
  1722.            "<LHead>Select #AttVal(Multiple)</LHead>"
  1723.            >
  1724.  
  1725.    <!-- <SELECT>                   Selection of option(s)          -->
  1726.    <!-- <SELECT NAME=...>          Name of form datum              -->
  1727.    <!-- <SELECT SIZE=...>          Options displayed at a time     -->
  1728.    <!-- <SELECT MULTIPLE>          Multiple selections allowed     -->
  1729.  
  1730.    <!ELEMENT OPTION - O (#PCDATA)*>
  1731.    <!ATTLIST OPTION
  1732.            %attrs;
  1733.            SELECTED (SELECTED) #IMPLIED
  1734.            VALUE CDATA #IMPLIED
  1735.  
  1736.  
  1737.  
  1738.                         Expires 20 February 1996       [Page 31]
  1739.  
  1740. Internet Draft          HTML internationalization         15 August 1995
  1741.  
  1742.  
  1743.            %SDAFORM; "LItem"
  1744.            %SDAPREF;
  1745.            "Option: #AttVal(Value) #AttVal(Selected)"
  1746.            >
  1747.  
  1748.    <!-- <OPTION>                   A selection option              -->
  1749.    <!-- <OPTION SELECTED>          Initial state                   -->
  1750.    <!-- <OPTION VALUE="...">       Form datum value for this option-->
  1751.  
  1752.    <!ELEMENT TEXTAREA - - (#PCDATA)* -(INPUT|SELECT|TEXTAREA)>
  1753.    <!ATTLIST TEXTAREA
  1754.            %attrs;
  1755.            NAME CDATA #REQUIRED
  1756.            ROWS NUMBER #REQUIRED
  1757.            COLS NUMBER #REQUIRED
  1758.            %SDAFORM; "Para"
  1759.            %SDAPREF; "Input Text -- #AttVal(Name): "
  1760.            >
  1761.  
  1762.    <!-- <TEXTAREA>            An area for text input -->
  1763.    <!-- <TEXTAREA NAME=...>   Name of form datum     -->
  1764.    <!-- <TEXTAREA ROWS=...>   Height of area         -->
  1765.    <!-- <TEXTAREA COLS=...>   Width of area          -->
  1766.  
  1767.    ]]>
  1768.  
  1769.  
  1770.    <!--======= Document Head ======================-->
  1771.  
  1772.    <![ %HTML.Recommended [
  1773.            <!ENTITY % head.extra "">
  1774.    ]]>
  1775.    <!ENTITY % head.extra "& NEXTID?">
  1776.  
  1777.    <!ENTITY % head.content "TITLE & ISINDEX? & BASE? %head.extra">
  1778.  
  1779.    <!ELEMENT HEAD O O  (%head.content) +(META|LINK)>
  1780.  
  1781.    <!-- <HEAD>     Document head   -->
  1782.  
  1783.    <!ELEMENT TITLE - -  (#PCDATA)*>
  1784.    <!ATTLIST TITLE
  1785.            %attrs;
  1786.            %SDAFORM; "Ti"    >
  1787.  
  1788.    <!-- <TITLE>    Title of document -->
  1789.  
  1790.    <!ELEMENT LINK - O EMPTY>
  1791.  
  1792.  
  1793.  
  1794.                         Expires 20 February 1996       [Page 32]
  1795.  
  1796. Internet Draft          HTML internationalization         15 August 1995
  1797.  
  1798.  
  1799.    <!ATTLIST LINK
  1800.            %attrs;
  1801.            HREF %URI #REQUIRED
  1802.            %linkExtraAttributes;
  1803.            %SDAPREF; "Linked to : #AttVal (TITLE) (URN) (HREF)>"    >
  1804.  
  1805.    <!-- <LINK>             Link from this document                 -->
  1806.    <!-- <LINK HREF="...">  Address of link destination             -->
  1807.    <!-- <LINK URN="...">   Lasting name of destination             -->
  1808.    <!-- <LINK REL=...>     Relationship to destination             -->
  1809.    <!-- <LINK REV=...>     Relationship of destination to this     -->
  1810.    <!-- <LINK TITLE="..."> Title of destination (advisory)         -->
  1811.    <!-- <LINK CHARSET="...">       Charset of destination (advisory)               -->
  1812.    <!-- <LINK METHODS="..."> Operations allowed (advisory)         -->
  1813.  
  1814.    <!ELEMENT ISINDEX - O EMPTY>
  1815.    <!ATTLIST ISINDEX
  1816.            %attrs;
  1817.            %SDAPREF;
  1818.       "<Para>[Document is indexed/searchable.]</Para>">
  1819.  
  1820.    <!-- <ISINDEX>          Document is a searchable index          -->
  1821.  
  1822.    <!ELEMENT BASE - O EMPTY>
  1823.    <!ATTLIST BASE
  1824.            HREF %URI; #REQUIRED     >
  1825.  
  1826.    <!-- <BASE>             Base context document                   -->
  1827.    <!-- <BASE HREF="...">  Address for this document               -->
  1828.  
  1829.    <!ELEMENT NEXTID - O EMPTY>
  1830.    <!ATTLIST NEXTID
  1831.            N CDATA #REQUIRED     >
  1832.  
  1833.    <!-- <NEXTID>           Next ID to use for link name            -->
  1834.    <!-- <NEXTID N=...>     Next ID to use for link name            -->
  1835.  
  1836.    <!ELEMENT META - O EMPTY>
  1837.    <!ATTLIST META
  1838.            HTTP-EQUIV  NAME    #IMPLIED
  1839.            NAME        NAME    #IMPLIED
  1840.            CONTENT     CDATA   #REQUIRED
  1841.            >
  1842.  
  1843.    <!-- <META>                     Generic Metainformation         -->
  1844.    <!-- <META HTTP-EQUIV=...>      HTTP response header name       -->
  1845.    <!-- <META NAME=...>            Metainformation name            -->
  1846.    <!-- <META CONTENT="...">       Associated information          -->
  1847.  
  1848.  
  1849.  
  1850.                         Expires 20 February 1996       [Page 33]
  1851.  
  1852. Internet Draft          HTML internationalization         15 August 1995
  1853.  
  1854.  
  1855.    <!--======= Document Structure =================-->
  1856.  
  1857.    <![ %HTML.Deprecated [
  1858.            <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
  1859.    ]]>
  1860.    <!ENTITY % html.content "HEAD, BODY">
  1861.  
  1862.    <!ELEMENT HTML O O  (%html.content)>
  1863.    <!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
  1864.  
  1865.    <!ATTLIST HTML
  1866.            %attrs;
  1867.            %version.attr;
  1868.            %SDAFORM; "Book"
  1869.            >
  1870.  
  1871.    <!-- <HTML>                     HTML Document                   -->
  1872.  
  1873.  
  1874. 7.2. SGML Declaration for HTML
  1875.  
  1876.    <!SGML  "ISO 8879:1986"
  1877.    --
  1878.            SGML Declaration for HyperText Markup Language version 2.x
  1879.            (HTML 2.x).
  1880.  
  1881.    --
  1882.  
  1883.    CHARSET
  1884.             BASESET  "ISO Registration Number 176//CHARSET
  1885.                       ISO/IEC 10646-1:1993 UCS-2 with
  1886.                       implementation level 3//ESC 2/5 2/15 4/5"
  1887.             DESCSET  0   9     UNUSED
  1888.                      9   2     9
  1889.                      11  2     UNUSED
  1890.                      13  1     13
  1891.                      14  18    UNUSED
  1892.                      32  95    32
  1893.                      127 1     UNUSED
  1894.                      128 32    UNUSED
  1895.                      160 65376 160
  1896.  
  1897.  
  1898.    CAPACITY        SGMLREF
  1899.                    TOTALCAP        150000
  1900.                    GRPCAP          150000
  1901.                    ENTCAP          150000
  1902.  
  1903.  
  1904.  
  1905.  
  1906.                         Expires 20 February 1996       [Page 34]
  1907.  
  1908. Internet Draft          HTML internationalization         15 August 1995
  1909.  
  1910.  
  1911.    SCOPE    DOCUMENT
  1912.    SYNTAX
  1913.             SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
  1914.                     17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127
  1915.             BASESET  "ISO Registration Number 176//CHARSET
  1916.                       ISO/IEC 10646-1:1993 UCS-2 with
  1917.                       implementation level 3//ESC 2/5 2/15 4/5"
  1918.             DESCSET  0 65536 0
  1919.             FUNCTION
  1920.                      RE            13
  1921.                      RS            10
  1922.                      SPACE         32
  1923.                      TAB SEPCHAR    9
  1924.                      EN-QUAD SEPCHAR 8192
  1925.                      EM-QUAD SEPCHAR 8193
  1926.                      EN-SPACE SEPCHAR 8194
  1927.                      EM-SPACE SEPCHAR 8195
  1928.                      T-P-E-SP SEPCHAR 8196
  1929.                      F-P-E-SP SEPCHAR 8197
  1930.                      S-P-E-SP SEPCHAR 8198
  1931.                      FIG-SP SEPCHAR 8199
  1932.                      PUNC-SP SEPCHAR 8200
  1933.                      THIN-SP SEPCHAR 8201
  1934.                      HAIR-SP SEPCHAR 8202
  1935.                      Z-W-SP SEPCHAR 8203
  1936.                      IDEO-SP SEPCHAR 12288
  1937.                      LRE FUNCHAR 8234   -- LEFT-TO-RIGHT EMBEDDING    --
  1938.                      RLE FUNCHAR 8235   -- RIGHT-TO-LEFT EMBEDDING    --
  1939.                      PDF FUNCHAR 8236   -- POP DIRECTIONAL FORMATTING --
  1940.                      LRO FUNCHAR 8237   -- LEFT-TO-RIGHT OVERRIDE     --
  1941.                      RLO FUNCHAR 8238   -- RIGHT-TO-LEFT OVERRIDE     --
  1942.  
  1943.             NAMING   LCNMSTRT ""
  1944.                      UCNMSTRT ""
  1945.                      LCNMCHAR ".-"
  1946.                      UCNMCHAR ".-"
  1947.                      NAMECASE GENERAL YES
  1948.                               ENTITY  NO
  1949.             DELIM    GENERAL  SGMLREF
  1950.                      SHORTREF SGMLREF
  1951.                            "‪"      -- LEFT-TO-RIGHT EMBEDDING    --
  1952.                            "‫"      -- RIGHT-TO-LEFT EMBEDDING    --
  1953.                            "‬"      -- POP DIRECTIONAL FORMATTING --
  1954.                            "‭"      -- LEFT-TO-RIGHT OVERRIDE     --
  1955.                            "‮"      -- RIGHT-TO-LEFT OVERRIDE     --
  1956.             NAMES    SGMLREF
  1957.             QUANTITY SGMLREF
  1958.                      ATTSPLEN 2100
  1959.  
  1960.  
  1961.  
  1962.                         Expires 20 February 1996       [Page 35]
  1963.  
  1964. Internet Draft          HTML internationalization         15 August 1995
  1965.  
  1966.  
  1967.                      LITLEN   1024
  1968.                      NAMELEN  72    -- somewhat arbitrary; taken from
  1969.                                    internet line length conventions --
  1970.                      PILEN    1024
  1971.                      TAGLVL   100
  1972.                      TAGLEN   2100
  1973.                      GRPGTCNT 150
  1974.                      GRPCNT   64
  1975.  
  1976.    FEATURES
  1977.      MINIMIZE
  1978.        DATATAG  NO
  1979.        OMITTAG  YES
  1980.        RANK     NO
  1981.        SHORTTAG YES
  1982.      LINK
  1983.        SIMPLE   NO
  1984.        IMPLICIT NO
  1985.        EXPLICIT NO
  1986.      OTHER
  1987.        CONCUR   NO
  1988.        SUBDOC   NO
  1989.        FORMAL   YES
  1990.      APPINFO    "SDA"  -- conforming SGML Document Access application
  1991.                        --
  1992.    >
  1993.  
  1994.  
  1995. 7.3. Entity sets
  1996.  
  1997. 7.3.1. ISO Latin 1 Character Entity Set
  1998.  
  1999. The following public text lists each of the characters specified in the
  2000. Added Latin 1 entity set, along with its name, syntax for use, and
  2001. description. This list is derived from ISO Standard 8879:1986//ENTITIES
  2002. Added Latin 1//EN. HTML includes the entire entity set, and adds enti-
  2003. ties for all missing characters in the right part of ISO-8859-1.
  2004.  
  2005.  <!-- (C) International Organization for Standardization 1986
  2006.       Permission to copy in any form is granted for use with
  2007.       conforming SGML systems and applications as defined in
  2008.       ISO 8879, provided this notice is included in all copies.
  2009.    -->
  2010.  <!-- Character entity set. Typical invocation:
  2011.       <!ENTITY % ISOlat1 PUBLIC
  2012.         "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
  2013.       %ISOlat1;
  2014.    -->
  2015.  
  2016.  
  2017.  
  2018.                         Expires 20 February 1996       [Page 36]
  2019.  
  2020. Internet Draft          HTML internationalization         15 August 1995
  2021.  
  2022.  
  2023.  <!ENTITY nbsp   CDATA " " -- no-break space -->
  2024.  <!ENTITY iexcl  CDATA "¡" -- inverted exclamation mark -->
  2025.  <!ENTITY cent   CDATA "¢" -- cent sign -->
  2026.  <!ENTITY pound  CDATA "£" -- pound sterling sign -->
  2027.  <!ENTITY curren CDATA "¤" -- general currency sign -->
  2028.  <!ENTITY yen    CDATA "¥" -- yen sign -->
  2029.  <!ENTITY brvbar CDATA "¦" -- broken (vertical) bar -->
  2030.  <!ENTITY sect   CDATA "§" -- section sign -->
  2031.  <!ENTITY uml    CDATA "¨" -- umlaut (dieresis) -->
  2032.  <!ENTITY copy   CDATA "©" -- copyright sign -->
  2033.  <!ENTITY ordf   CDATA "ª" -- ordinal indicator, feminine -->
  2034.  <!ENTITY laquo  CDATA "«" -- angle quotation mark, left -->
  2035.  <!ENTITY not    CDATA "¬" -- not sign -->
  2036.  <!ENTITY shy    CDATA "­" -- soft hyphen -->
  2037.  <!ENTITY reg    CDATA "®" -- registered sign -->
  2038.  <!ENTITY macr   CDATA "¯" -- macron -->
  2039.  <!ENTITY deg    CDATA "°" -- degree sign -->
  2040.  <!ENTITY plusmn CDATA "±" -- plus-or-minus sign -->
  2041.  <!ENTITY sup2   CDATA "²" -- superscript two -->
  2042.  <!ENTITY sup3   CDATA "³" -- superscript three -->
  2043.  <!ENTITY acute  CDATA "´" -- acute accent -->
  2044.  <!ENTITY micro  CDATA "µ" -- micro sign -->
  2045.  <!ENTITY para   CDATA "¶" -- pilcrow (paragraph sign) -->
  2046.  <!ENTITY middot CDATA "·" -- middle dot -->
  2047.  <!ENTITY cedil  CDATA "¸" -- cedilla -->
  2048.  <!ENTITY sup1   CDATA "¹" -- superscript one -->
  2049.  <!ENTITY ordm   CDATA "º" -- ordinal indicator, masculine -->
  2050.  <!ENTITY raquo  CDATA "»" -- angle quotation mark, right -->
  2051.  <!ENTITY frac14 CDATA "¼" -- fraction one-quarter -->
  2052.  <!ENTITY frac12 CDATA "½" -- fraction one-half -->
  2053.  <!ENTITY frac34 CDATA "¾" -- fraction three-quarters -->
  2054.  <!ENTITY iquest CDATA "¿" -- inverted question mark -->
  2055.  <!ENTITY Agrave CDATA "À" -- capital A, grave accent -->
  2056.  <!ENTITY Aacute CDATA "Á" -- capital A, acute accent -->
  2057.  <!ENTITY Acirc  CDATA "Â" -- capital A, circumflex accent -->
  2058.  <!ENTITY Atilde CDATA "Ã" -- capital A, tilde -->
  2059.  <!ENTITY Auml   CDATA "Ä" -- capital A, dieresis or umlaut mark -->
  2060.  <!ENTITY Aring  CDATA "Å" -- capital A, ring -->
  2061.  <!ENTITY AElig  CDATA "Æ" -- capital AE diphthong (ligature) -->
  2062.  <!ENTITY Ccedil CDATA "Ç" -- capital C, cedilla -->
  2063.  <!ENTITY Egrave CDATA "È" -- capital E, grave accent -->
  2064.  <!ENTITY Eacute CDATA "É" -- capital E, acute accent -->
  2065.  <!ENTITY Ecirc  CDATA "Ê" -- capital E, circumflex accent -->
  2066.  <!ENTITY Euml   CDATA "Ë" -- capital E, dieresis or umlaut mark -->
  2067.  <!ENTITY Igrave CDATA "Ì" -- capital I, grave accent -->
  2068.  <!ENTITY Iacute CDATA "Í" -- capital I, acute accent -->
  2069.  <!ENTITY Icirc  CDATA "Î" -- capital I, circumflex accent -->
  2070.  <!ENTITY Iuml   CDATA "Ï" -- capital I, dieresis or umlaut mark -->
  2071.  
  2072.  
  2073.  
  2074.                         Expires 20 February 1996       [Page 37]
  2075.  
  2076. Internet Draft          HTML internationalization         15 August 1995
  2077.  
  2078.  
  2079.  <!ENTITY ETH    CDATA "Ð" -- capital Eth, Icelandic -->
  2080.  <!ENTITY Ntilde CDATA "Ñ" -- capital N, tilde -->
  2081.  <!ENTITY Ograve CDATA "Ò" -- capital O, grave accent -->
  2082.  <!ENTITY Oacute CDATA "Ó" -- capital O, acute accent -->
  2083.  <!ENTITY Ocirc  CDATA "Ô" -- capital O, circumflex accent -->
  2084.  <!ENTITY Otilde CDATA "Õ" -- capital O, tilde -->
  2085.  <!ENTITY Ouml   CDATA "Ö" -- capital O, dieresis or umlaut mark -->
  2086.  <!ENTITY times  CDATA "×" -- multiply sign -->
  2087.  <!ENTITY Oslash CDATA "Ø" -- capital O, slash -->
  2088.  <!ENTITY Ugrave CDATA "Ù" -- capital U, grave accent -->
  2089.  <!ENTITY Uacute CDATA "Ú" -- capital U, acute accent -->
  2090.  <!ENTITY Ucirc  CDATA "Û" -- capital U, circumflex accent -->
  2091.  <!ENTITY Uuml   CDATA "Ü" -- capital U, dieresis or umlaut mark -->
  2092.  <!ENTITY Yacute CDATA "Ý" -- capital Y, acute accent -->
  2093.  <!ENTITY THORN  CDATA "Þ" -- capital Thorn, Icelandic -->
  2094.  <!ENTITY szlig  CDATA "ß" -- small sharp s, German (sz ligature) -->
  2095.  <!ENTITY agrave CDATA "à" -- small a, grave accent -->
  2096.  <!ENTITY aacute CDATA "á" -- small a, acute accent -->
  2097.  <!ENTITY acirc  CDATA "â" -- small a, circumflex accent -->
  2098.  <!ENTITY atilde CDATA "ã" -- small a, tilde -->
  2099.  <!ENTITY auml   CDATA "ä" -- small a, dieresis or umlaut mark -->
  2100.  <!ENTITY aring  CDATA "å" -- small a, ring -->
  2101.  <!ENTITY aelig  CDATA "æ" -- small ae diphthong (ligature) -->
  2102.  <!ENTITY ccedil CDATA "ç" -- small c, cedilla -->
  2103.  <!ENTITY egrave CDATA "è" -- small e, grave accent -->
  2104.  <!ENTITY eacute CDATA "é" -- small e, acute accent -->
  2105.  <!ENTITY ecirc  CDATA "ê" -- small e, circumflex accent -->
  2106.  <!ENTITY euml   CDATA "ë" -- small e, dieresis or umlaut mark -->
  2107.  <!ENTITY igrave CDATA "ì" -- small i, grave accent -->
  2108.  <!ENTITY iacute CDATA "í" -- small i, acute accent -->
  2109.  <!ENTITY icirc  CDATA "î" -- small i, circumflex accent -->
  2110.  <!ENTITY iuml   CDATA "ï" -- small i, dieresis or umlaut mark -->
  2111.  <!ENTITY eth    CDATA "ð" -- small eth, Icelandic -->
  2112.  <!ENTITY ntilde CDATA "ñ" -- small n, tilde -->
  2113.  <!ENTITY ograve CDATA "ò" -- small o, grave accent -->
  2114.  <!ENTITY oacute CDATA "ó" -- small o, acute accent -->
  2115.  <!ENTITY ocirc  CDATA "ô" -- small o, circumflex accent -->
  2116.  <!ENTITY otilde CDATA "õ" -- small o, tilde -->
  2117.  <!ENTITY ouml   CDATA "ö" -- small o, dieresis or umlaut mark -->
  2118.  <!ENTITY divide CDATA "÷" -- divide sign -->
  2119.  <!ENTITY oslash CDATA "ø" -- small o, slash -->
  2120.  <!ENTITY ugrave CDATA "ù" -- small u, grave accent -->
  2121.  <!ENTITY uacute CDATA "ú" -- small u, acute accent -->
  2122.  <!ENTITY ucirc  CDATA "û" -- small u, circumflex accent -->
  2123.  <!ENTITY uuml   CDATA "ü" -- small u, dieresis or umlaut mark -->
  2124.  <!ENTITY yacute CDATA "ý" -- small y, acute accent -->
  2125.  <!ENTITY thorn  CDATA "þ" -- small thorn, Icelandic -->
  2126.  <!ENTITY yuml   CDATA "ÿ" -- small y, dieresis or umlaut mark -->
  2127.  
  2128.  
  2129.  
  2130.                         Expires 20 February 1996       [Page 38]
  2131.  
  2132. Internet Draft          HTML internationalization         15 August 1995
  2133.  
  2134.  
  2135. 7.3.2. BIDI Entity Set
  2136.  
  2137.    The following entity set is sufficient to support the full Unicode
  2138.    bidirectionnal algorithm.
  2139.  
  2140.    <!-- Character entity set. Typical invocation:
  2141.         <!ENTITY % HTMLbidi PUBLIC
  2142.           "-//IETF//ENTITIES bidi//EN//HTML">
  2143.         %HTMLbidi;
  2144.      -->
  2145.    <!ENTITY zwnj SDATA "‌"--=zero width non-joiner-->
  2146.    <!ENTITY zwj  SDATA "‍"--=zero width joiner-->
  2147.    <!ENTITY lrm  SDATA "‎"--=left-to-right mark-->
  2148.    <!ENTITY rlm  SDATA "‏"--=right-to-left mark-->
  2149.    <!ENTITY lre  SDATA "‪"--=left-to-right embedding-->
  2150.    <!ENTITY rle  SDATA "‫"--=right-to-left embedding-->
  2151.    <!ENTITY pdf  SDATA "‬"--=pop directional formatting-->
  2152.    <!ENTITY lro  SDATA "‭"--=left-to-right override-->
  2153.    <!ENTITY rlo  SDATA "‮"--=right-to-left override-->
  2154.  
  2155.  
  2156. Bibliography
  2157.  
  2158.    [BRYAN88]      M. Bryan, "SGML -- An Author's Guide to the Standard
  2159.                   Generalized Markup Language", Addison-Wesley, Reading,
  2160.                   1988.
  2161.  
  2162.    [ERCS]         Extended Reference Concrete Syntax for SGML.
  2163.                   <http://www.sgmlopen.org/sgml/docs/ercs/ercs-
  2164.                   home.html>
  2165.  
  2166.    [FILE-UPLOAD]  E. Nebel and L. Masinter, "Form-based File Upload in
  2167.                   HTML", Work in progress (draft-ietf-html-
  2168.                   fileupload-02.txt), Xerox Corporation, April 1995.
  2169.  
  2170.    [GOLD90]       C. F. Goldfarb, "The SGML Handbook", Y. Rubinsky, Ed.,
  2171.                   Oxford University Press, 1990.
  2172.  
  2173.    [HTML-2]       T. Berners-Lee and D. Connolly, "Hypertext Markup Lan-
  2174.                   guage - 2.0", Work in progress (draft-ietf-html-
  2175.                   spec-02.txt), MIT/W3C, May 1995.
  2176.  
  2177.    [HTTP]         T. Berners-Lee, R. T. Fielding, and H. Frystyk
  2178.                   Nielsen, "Hypertext Transfer Protocol - HTTP/1.0",
  2179.                   Work in progress (draft-ietf-http-v10-spec-00.ps),
  2180.                   MIT, UC Irvine, CERN, March 1995.
  2181.  
  2182.    [ISO-639]      ISO 639:1988. Codes pour la reprΘsentation des noms de
  2183.  
  2184.  
  2185.  
  2186.                         Expires 20 February 1996       [Page 39]
  2187.  
  2188. Internet Draft          HTML internationalization         15 August 1995
  2189.  
  2190.  
  2191.                   langue.  Technical content in
  2192.                   <http://www.sil.org/sgml/iso639a.html>
  2193.  
  2194.    [ISO-CD-639-2] ISO CD 639-2:1992. Technical content in
  2195.                   <http://www.sil.org/sgml/iso639-2a.html>
  2196.  
  2197.    [ISO-1000]     ISO 1000:1992.  UnitΘs SI et recommandations pour
  2198.                   l'emploi de leurs multiples et de certaines autres
  2199.                   unitΘs.
  2200.  
  2201.    [ISO-3166]     ISO 3166:1993. Codes pour la reprΘsentation des noms
  2202.                   de pays.
  2203.  
  2204.    [ISO-4217]     ISO 4217:1990. Codes pour la reprΘsentation des mon-
  2205.                   naies et types des fonds.
  2206.  
  2207.    [ISO-8601]     ISO 8601:1988.  ╔lΘments de donnΘes et formats
  2208.                   d'Θchange -- ╔change d'information -- ReprΘsentation
  2209.                   de la date et de l'heure.
  2210.  
  2211.    [ISO-8859-1]   ISO 8859-1:1987.  International Standard -- Informa-
  2212.                   tion Processing -- 8-bit Single-Byte Coded Graphic
  2213.                   Character Sets -- Part 1: Latin Alphabet No. 1.
  2214.  
  2215.    [ISO-8879]     ISO 8879:1986. International Standard -- Information
  2216.                   Processing -- Text and Office Systems -- Standard Gen-
  2217.                   eralized Markup Language (SGML).
  2218.  
  2219.    [ISO-10646]    ISO/IEC 10646-1:1993. International Standard -- Infor-
  2220.                   mation technology -- Universal Multiple-Octet Coded
  2221.                   Character Set (UCS) -- Part 1: Architecture and Basic
  2222.                   Multilingual Plane.
  2223.  
  2224.    [NICOL]        G.T. Nicol, "The Multilingual World Wide Web", Elec-
  2225.                   tronic Book Technologies, 1995,
  2226.                   <http://www.ebt.com/docs/multling.html>
  2227.  
  2228.    [RFC1468]      J. Murai, M. Crispin and E. van der Poel, "Japanese
  2229.                   Character Encoding for Internet Messages", RFC 1468,
  2230.                   Keio University, Panda Programming, June 1993.
  2231.  
  2232.    [RFC1521]      N. Borenstein and N. Freed, "MIME (Multipurpose Inter-
  2233.                   net Mail Extensions) Part One: Mechanisms for Specify-
  2234.                   ing and Describing the Format of Internet Message Bod-
  2235.                   ies", RFC 1521, Bellcore, Innosoft, September 1993.
  2236.  
  2237.    [RFC1590]      J. Postel, "Media Type Registration Procedure", RFC
  2238.                   1590, USC/ISI, March 1994.
  2239.  
  2240.  
  2241.  
  2242.                         Expires 20 February 1996       [Page 40]
  2243.  
  2244. Internet Draft          HTML internationalization         15 August 1995
  2245.  
  2246.  
  2247.    [RFC1738]      T. Berners-Lee, L. Masinter, and M. McCahill, "Uniform
  2248.                   Resource Locators (URL)", RFC 1738, CERN, Xerox PARC,
  2249.                   University of Minnesota, October 1994.
  2250.  
  2251.    [RFC1766]      H. Alverstrand, "Tags for the Identification of Lan-
  2252.                   guages", RFC 1766, UNINETT, March 1995.
  2253.  
  2254.    [SQ91]         SoftQuad, "The SGML Primer", 3rd ed., SoftQuad Inc.,
  2255.                   1991.
  2256.  
  2257.    [TAKADA]       Toshihiro Takada, "Multilingual Information Exchange
  2258.                   through the World-Wide Web", Computer Networks and
  2259.                   ISDN Systems, Vol. 27, No. 2, Nov. 1994 , p. 235-241.
  2260.  
  2261.    [TEI]          TEI Guidelines for Electronic Text Encoding and Inter-
  2262.                   change.  <http://etext.virgina.edu/TEI.html>
  2263.  
  2264.    [UNICODE]      The Unicode Consortium, "The Unicode Standard --
  2265.                   Worldwide Character Encoding -- Version 1.0", Addison-
  2266.                   Wesley, Volume 1, 1991, Volume 2, 1992.  The BIDI
  2267.                   algorithm is in appendix A of volume 1, with correc-
  2268.                   tions in appendix D of volume 2.
  2269.  
  2270.    [VANH90]       E. van Hervijnen, "Practical SGML", Kluwer Academicq
  2271.                   Publishers Group, Norwell and Dordrecht, 1990.
  2272.  
  2273. Authors' Addresses
  2274.  
  2275.    Franτois Yergeau
  2276.    Alis Technologies
  2277.    3410, rue Griffith
  2278.    MontrΘal  QC  H4T 1A7
  2279.    Canada
  2280.  
  2281.    Tel: +1 (514) 738-9171
  2282.    Fax: +1 (514) 342-0318
  2283.    EMail: yergeau@alis.ca
  2284.  
  2285.  
  2286.    Gavin Thomas Nicol
  2287.    Electronic Book Technologies, Japan
  2288.    1-29-9 Tsurumaki,
  2289.    Setagaya-ku,
  2290.    Tokyo
  2291.    Japan
  2292.  
  2293.    Tel + Fax: +81-3-3706-7351
  2294.    EMail: gtn@ebt.com, gtn@twics.co.jp
  2295.  
  2296.  
  2297.  
  2298.                         Expires 20 February 1996       [Page 41]
  2299.  
  2300. Internet Draft          HTML internationalization         15 August 1995
  2301.  
  2302.  
  2303.    Glenn Adams
  2304.    Stonehand
  2305.    118 Magazine Street
  2306.    Cambridge, MA 02139
  2307.    U.S.A.
  2308.  
  2309.    Tel: +1 (617) 864-5524
  2310.    Fax: +1 (617) 864-4965
  2311.    EMail: glenn@stonehand.com
  2312.  
  2313.  
  2314.    Martin J. Duerst
  2315.    Multimedia-Laboratory
  2316.    Departement of Computer Science
  2317.    University of Zurich
  2318.    Winterthurerstrasse 190
  2319.    CH-8057 Zurich
  2320.    Switzerland
  2321.  
  2322.    Tel: +41 1 257 43 16
  2323.    Fax: +41 1 363 00 35
  2324.    E-mail: mduerst@ifi.unizh.ch
  2325.  
  2326.  
  2327.  
  2328.  
  2329.  
  2330.  
  2331.  
  2332.  
  2333.  
  2334.  
  2335.  
  2336.  
  2337.  
  2338.  
  2339.  
  2340.  
  2341.  
  2342.  
  2343.  
  2344.  
  2345.  
  2346.  
  2347.  
  2348.  
  2349.  
  2350.  
  2351.  
  2352.  
  2353.  
  2354.                         Expires 20 February 1996       [Page 42]
  2355.